Submission #925587

#TimeUsernameProblemLanguageResultExecution timeMemory
925587vjudge1Collecting Mushrooms (NOI18_collectmushrooms)C++17
100 / 100
10 ms5348 KiB
//#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native") //#pragma GCC optimize("Ofast,unroll-loops,fast-math,O3") #include<bits/stdc++.h> using namespace std; #define all(a) a.begin(), a.end() #define rall(a) a.rbegin(), a.rend() #define sz(a) (int)a.size() #define s second #define f first using ll = long long; using pii = pair<int, int>; using pll = pair<ll, ll>; mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count()); vector<pii> rid = {{0, 1}, {0, -1}, {1, 0}, {-1, 0}}; vector<pii> dir = {{-1, -1}, {-1, 1}, {1, -1}, {1, 1}}; const int N = 2e5 + 1, mod = 998244353; const ll inf = 1e9; double eps = 1e-15; bool flg = 0; void slv() { int n, m, d, k; cin >> n >> m >> d >> k; int p[n + 1][m + 1]; memset(p, 0, sizeof(p)); char c[n + 1][m + 1]; for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { cin >> c[i][j]; p[i][j] = p[i - 1][j] + p[i][j - 1] - p[i - 1][j - 1]; if (c[i][j] == 'S') p[i][j]++; } } int ans = 0; for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { if (c[i][j] == 'M') { int x = min(n, i + d), y = min(m, j + d); int a = max(1, i - d), b = max(1, j - d); int v = p[x][y] - p[x][b - 1]; v += p[a - 1][b - 1] - p[a - 1][y]; if (v >= k) ans++; } } } cout << ans; } main() { //freopen("rsq.in", "r", stdin); //freopen("rsq.out", "w", stdout); ios_base::sync_with_stdio(0); cin.tie(0); int tp = 1; if (flg) cin >> tp; while (tp--) { slv(); } } //wenomechainsama

Compilation message (stderr)

mushrooms.cpp:60:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   60 | main() {
      | ^~~~
#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...