Submission #123967

#TimeUsernameProblemLanguageResultExecution timeMemory
123967ioilolcomBitaro the Brave (JOI19_ho_t1)C++14
50 / 100
1067 ms62840 KiB
#include <bits/stdc++.h> using namespace std; #define endl "\n" #define pii pair<int,int> typedef long long int ll; vector<pii> jj; map<int,vector<int> > o; map<int,vector<int> > l; int main() { ios_base:: sync_with_stdio(false); cin.tie(0); int n,m; cin>>n>>m; for(int i=1; i<=n; i++) { for(int j=1; j<=m; j++) { char c; cin>>c; if(c=='J') jj.push_back({i,j}); else if(c=='O') o[i].push_back(j); else if(c=='I') l[j].push_back(i); } } ll lol=0; for(auto a:jj) { int f=a.first; int s=a.second; //cout<<f<<" "<<s<<endl; /*for(int z:l[s]) { cout<<z<<" "<<s<<endl; }*/ ll ans=o[f].end()-upper_bound(o[f].begin(),o[f].end(),s); ll anss=l[s].end()-upper_bound(l[s].begin(),l[s].end(),f); //cout<<ans<<" "<<anss<<endl; lol+=ans*anss; //break; } cout<<lol<<endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...