Submission #717234

# Submission time Handle Problem Language Result Execution time Memory
717234 2023-04-01T15:43:51 Z Juan Kamenčići (COCI21_kamencici) C++14
10 / 70
1000 ms 3008 KB
    #include<bits/stdc++.h>
    using namespace std;
    #define int long long
    #define pii pair<int, int>
    #define ff first
    #define ss second
    const int maxn = 55;
     
    bool v[maxn];
    int dp[maxn][maxn][maxn][maxn][3];
     
    bool solve(int l, int r, int k1, int k2, int p){
    	if(k1==0) return 0;
    	if(k2==0) return 1;
     
    	if(dp[l][r][k1][k2][p]) return dp[l][r][k1][k2][p];
     
    	if(p==1){
    		return dp[l][r][k1][k2][p] = max(solve(l+1, r, k1-v[l], k2, 2), solve(l, r-1, k1-v[r], k2, 2));
    	}
    	else{
    		return dp[l][r][k1][k2][p] = min(solve(l+1, r, k1, k2-v[l], 1), solve(l, r-1, k1, k2-v[r], 1));
    	}
    }
     
    int32_t main(){
    	int n, k; cin >> n >> k;
    	for(int i = 0; i < n; i++){
    		char c; cin >> c;
    		if(c=='C') v[i] = 1;
    	}
     
    	if(solve(0, n-1, k, k, 1)) cout << "DA\n";
    	else cout << "NE\n";
    }

Compilation message

Main.cpp: In function 'bool solve(long long int, long long int, long long int, long long int, long long int)':
Main.cpp:19:34: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   19 |       return dp[l][r][k1][k2][p] = max(solve(l+1, r, k1-v[l], k2, 2), solve(l, r-1, k1-v[r], k2, 2));
      |              ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp:22:34: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   22 |       return dp[l][r][k1][k2][p] = min(solve(l+1, r, k1, k2-v[l], 1), solve(l, r-1, k1, k2-v[r], 1));
      |              ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 1108 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 2 ms 980 KB Output is correct
5 Correct 1 ms 852 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 1108 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 2 ms 980 KB Output is correct
5 Correct 1 ms 852 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
7 Correct 18 ms 1264 KB Output is correct
8 Correct 13 ms 864 KB Output is correct
9 Execution timed out 1087 ms 3008 KB Time limit exceeded
10 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 1108 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 2 ms 980 KB Output is correct
5 Correct 1 ms 852 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
7 Correct 18 ms 1264 KB Output is correct
8 Correct 13 ms 864 KB Output is correct
9 Execution timed out 1087 ms 3008 KB Time limit exceeded
10 Halted 0 ms 0 KB -