# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
321220 | 2020-11-11T14:58:07 Z | fadi57 | Collecting Mushrooms (NOI18_collectmushrooms) | C++14 | 37 ms | 4728 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(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;return 0; } 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; } }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 12 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 37 ms | 4708 KB | Output is correct |
2 | Correct | 35 ms | 4728 KB | Output is correct |
3 | Correct | 36 ms | 4708 KB | Output is correct |
4 | Correct | 36 ms | 4712 KB | Output is correct |
5 | Correct | 36 ms | 4708 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 364 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |