Submission #157657

#TimeUsernameProblemLanguageResultExecution timeMemory
157657InfiniteJestBitaro the Brave (JOI19_ho_t1)C++14
50 / 100
1045 ms83716 KiB
#include <iostream> #include <fstream> #include <vector> #include <queue> #include <algorithm> #include <math.h> #define pb push_back #define mp make_pair #define fi first #define se second using namespace std; ifstream in("input.txt"); ofstream out("output.txt"); typedef long long ll; int h,w; char tab[5000][5000]; int pref[5000][5000]; int prefb[5000][5000]; int main(){ cin>>h>>w; for(int i=0;i<h;i++){ int sum=0; for(int y=0;y<w;y++){ cin>>tab[i][y]; if(tab[i][y]=='O')sum++; prefb[i][y]=sum; } } for(int i=0;i<w;i++){ int sum=0; for(int y=0;y<h;y++){ if(tab[y][i]=='I')sum++; pref[y][i]=sum; } } ll tot=0; for(int i=0;i<h;i++){ for(int y=0;y<w;y++){ if(tab[i][y]=='J'){ tot+=(prefb[i][w-1]-prefb[i][y])*(pref[h-1][y]-pref[i][y]); } } } cout<<tot; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...