Submission #733789

#TimeUsernameProblemLanguageResultExecution timeMemory
733789vjudge1Collecting Mushrooms (NOI18_collectmushrooms)C++17
60 / 100
2086 ms4692 KiB
#include <bits/stdc++.h>
using namespace std;
#define ll long long
vector <pair<ll,ll>> v;
ll r, c, d, k;
bool check(ll a, ll b) {
    if(a < r && b < c && a >= 0 && b >= 0) return 1;
    else return 0;
}
int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cin >> r >> c;
    cin >> d >> k;
    ll b[r][c];
    for(ll i = 0; i < r; i++) {
        for(ll j = 0; j < c; j++) {
            b[i][j] = 0;
        }
    }
    char ch[r][c];
    for(ll i = 0; i < r; i++) {
        for(ll j = 0; j < c; j++) {
            cin >> ch[i][j];
            if(ch[i][j] == 'M') {
                v.push_back({i, j});
            }
            else if(ch[i][j] == 'S') {
                for(ll q = i - d; q <= i + d; q++) {
                    for(ll w = j - d; w <= j + d; w++) {
                        if(check(q, w) == 0) continue;
                        b[q][w]++;
                    }
                }
            }
        }
    }
    ll ans = 0;
    for(ll i = 0; i < v.size(); i++) {
        ll f = v[i].first;
        ll s = v[i].second;
        if(b[f][s] >= k) ans++;
    }
    cout << ans;
}

Compilation message (stderr)

mushrooms.cpp: In function 'int main()':
mushrooms.cpp:39:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   39 |     for(ll i = 0; i < v.size(); i++) {
      |                   ~~^~~~~~~~~~
#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...