Submission #1093663

#TimeUsernameProblemLanguageResultExecution timeMemory
1093663lamagrilBitaro the Brave (JOI19_ho_t1)C++14
20 / 100
344 ms3652 KiB
#include <bits/stdc++.h> #pragma GCC optimize("O3,unroll-loops") #pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt") using namespace std; const int nx=3005; char mp[nx][nx]; int main(){ cin.tie(NULL)->sync_with_stdio(false); int n,m; cin >> n >> m; for(int i=1 ; i<=n ; i++){ string s; cin >> s; for(int j=1 ; j<=m ; j++){ mp[i][j]=s[j-1]; } } vector<int> aj[nx],ao[nx],ai[nx]; for(int i=1 ; i<=n ; i++){ for(int j=1 ; j<=m ; j++){ if(mp[i][j]=='J'){ aj[i].push_back(j); } else if(mp[i][j]=='O'){ ao[j].push_back(i); } else if(mp[i][j]=='I'){ ai[j].push_back(i); } } } int ans=0; /*cout << "adj J" << '\n'; for(int i=1 ; i<=n ; i++){ cout << "i= " << i << " "; for(int j:aj[i]){ cout << j << ' '; } cout << '\n'; } cout << "adj O" << '\n'; for(int i=1 ; i<=m ; i++){ cout << "i= " << i << " "; for(int j:ao[i]){ cout << j << ' '; } cout << '\n'; } cout << "adj I" << '\n'; for(int i=1 ; i<=m ; i++){ cout << "i= " << i << " "; for(int j:ai[i]){ cout << j << ' '; } cout << '\n'; }*/ for(int u1=1 ; u1<=m ; u1++)/*loop l*/{ for(int v1:ao[u1])/*loop i*/{ for(int v2:aj[v1])/*loop j*/{ if(v2>=u1) continue; for(int v3:ai[v2])/*loop k*/{ if(v3<=v1) continue; ans++; } } } } cout << ans << '\n'; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...