# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
321218 | 2020-11-11T14:54:02 Z | fadi57 | Collecting Mushrooms (NOI18_collectmushrooms) | C++14 | 26 ms | 1928 KB |
#include <bits/stdc++.h> using namespace std; typedef long long ll; const int mx=5*1e5+6; const int mod= 998244353; const ll inf=2*1e16+9; int r,c,d,k; char a[mx]; ll pref[mx]; int get(int i){ int sum=0; int right=min(c-1,i+d); int left=max(0,i-d); sum=pref[right]; if(left==0){return sum;}return (sum-pref[left-1]); } int main() { cin>>r>>c>>d>>k; if(d=max(r,c)){ int mushrom=0;int s=0; for(int i=0;i<r;i++){ for(int j=0;j<c;j++){ string x;\ cin>>x;mushrom+=(x=="M"); s+=(x=="S"); } } if(s>=k){cout<<mushrom;}else{cout<<0;} return 0; } if(r==1){ ll ans=0; for(int i=0;i<c;i++){ cin>>a[i]; if(a[i]=='S'){ pref[i]++; } if(i!=0){pref[i]+=pref[i-1];} } for(int i=0;i<c;i++){ int sum=0; if(a[i]=='M'){ sum=get(i); } if(sum>=k){ans++;}// //cout<<pref[i]; } cout<<ans; } }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 11 ms | 492 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 26 ms | 1928 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |