#include <bits/stdc++.h>
#define endl "\n"
#define mod 1000000007
using namespace std;
int dp[401][400][400];
string s;
int n,k;
bool solve(int l,int r,int a,int b,int u){
if(a>k||b>k) return 1;
if(dp[l][r][a]!=-1) return dp[l][r][a];
if(u==0){
if(solve(l+1,r,a+(s[l]=='C'),b,(u^1))==0||solve(l,r-1,a+(s[r]=='C'),b,(u^1))==0) return dp[l][r][a]=1;
return dp[l][r][a]=0;
}
else{
if(solve(l+1,r,a,b+(s[l]=='C'),(u^1))==0||solve(l,r-1,a,b+(s[r]=='C'),(u^1))==0) return dp[l][r][a]=1;
return dp[l][r][a]=0;
}
}
signed main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
memset(dp,-1,sizeof dp);
cin>>n>>k>>s;
if(solve(0,n-1,0,0,0)==1) cout<<"DA"<<endl;
else cout<<"NE"<<endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |