Submission #742680

#TimeUsernameProblemLanguageResultExecution timeMemory
742680riodsaCollecting Mushrooms (NOI18_collectmushrooms)C++17
9 / 100
22 ms5652 KiB
#include<bits/stdc++.h> using namespace std; #define pii pair<int,int> int r,c,d,w; const int N = 5e2+1; char b[N][N]; int qs[N][N]; vector<pii> mush; int main() { cin >> r >> c >> d >> w; for(int i=1;i<=r;++i) { for(int j=1;j<=c;++j) { cin >> b[i][j]; if(b[i][j] == 'S') qs[i][j] = 1; if(b[i][j] == 'M') mush.push_back({i,j}); } } for(int i=1;i<=r;++i) { for(int j=1;j<=c;++j) { qs[i][j] += qs[i-1][j]+qs[i][j-1]-qs[i-1][j-1]; } } int cnt = 0; for(auto [x,y] : mush) { int mx = min(r,x+d),mnx = max(1,x-d); int my = min(c,y+d),mny = max(1,y-d); int spring = qs[mx][my]-qs[mnx][my-1]-qs[mnx-1][my]+qs[mnx-1][mny-1]; if(spring >= w) ++cnt; } cout << cnt; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...