Submission #890624

#TimeUsernameProblemLanguageResultExecution timeMemory
890624serifefedartarKamenčići (COCI21_kamencici)C++17
70 / 70
46 ms183164 KiB
#include <bits/stdc++.h> using namespace std; #define fast ios::sync_with_stdio(0);cin.tie(0); typedef long long ll; #define f first #define s second #define MOD 998244353 #define LOGN 21 #define MAXN 360 int n, k, dp[MAXN][MAXN][MAXN], pref[MAXN]; string s; bool solve(int l, int r, int K) { if (dp[l][r][K] != -1) return dp[l][r][K]; if (K >= k) return dp[l][r][K] = 0; if (pref[n] - pref[r] + pref[l-1] - K >= k) return dp[l][r][K] = 1; if ((n - (r - l + 1)) % 2) return dp[l][r][K] = solve(l+1, r, K) && solve(l, r-1, K); return dp[l][r][K] = solve(l+1, r, K + (s[l] == 'C')) || solve(l, r-1, K + (s[r] == 'C')); } int main() { fast memset(dp, -1, sizeof(dp)); cin >> n >> k >> s; s = "#" + s; for (int i = 1; i <= n; i++) pref[i] = pref[i-1] + (s[i] == 'C'); if (solve(1, n, 0)) cout << "DA\n"; else cout << "NE\n"; }

Compilation message (stderr)

Main.cpp: In function 'bool solve(int, int, int)':
Main.cpp:18:22: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   18 |   return dp[l][r][K] = 0;
      |          ~~~~~~~~~~~~^~~
Main.cpp:20:22: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   20 |   return dp[l][r][K] = 1;
      |          ~~~~~~~~~~~~^~~
Main.cpp:23:22: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   23 |   return dp[l][r][K] = solve(l+1, r, K) && solve(l, r-1, K);
      |          ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp:24:21: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   24 |  return dp[l][r][K] = solve(l+1, r, K + (s[l] == 'C')) || solve(l, r-1, K + (s[r] == 'C'));
      |         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...