ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#654 | #112. 【0621 模拟赛】7Krokods | tanzicheng | 100 | 13ms | 3468kb | C++14 | 1.6kb | 2025-06-21 15:25:49 | 2025-06-21 23:51:14 |
answer
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N= 3e5 +50, M= 1e3 +50;
const int INF=0x3f3f3f3f3f3f3f3f, mod=1e9+7;
char sc[]={'k','r','o','k','o','d'};
int n,m;
string s;
int a[5];
int ans=0;
//void dfs(int i,int pro,int cnt){
// if(pro==6){
// pro=0;
// cnt+=7;}
// if(i==n){
// cout <<m;
// cnt+=2*max({a[0],a[1],a[2],a[3]})*m+m*m;
// ans=max(ans,cnt+a[1]*a[1]+a[0]*a[0]+a[2]*a[2]+a[3]*a[3]);
// cout<<s<<" "<<cnt<<endl;
// return;
// }
//
// if(s[i+1]==sc[pro]){
// dfs(i+1,pro+1,cnt);
// return;
// }
// else if(m>0){
// string t=s;
// string news="";
// for(int j=0;j<i;j++){
// news+=s[j];
// }
// news+=sc[pro];
// if(sc[pro]=='k')a[0]++;
// if(sc[pro]=='r')a[1]++;
// if(sc[pro]=='o')a[2]++;
// if(sc[pro]=='d')a[3]++;
// for(int j=max(i,0ll);j<s.size();j++){
// news+=s[j];
// }
//
// m--;
// n++;
// s=news;
// dfs(i+1,pro+1,cnt);
// m++;
// n--;
// s=t;
// if(sc[pro]=='k')a[0]--;
// if(sc[pro]=='r')a[1]--;
// if(sc[pro]=='o')a[2]--;
// if(sc[pro]=='d')a[3]--;
// dfs(i+1,0,cnt);
// }
// else{
// dfs(i+1,0,cnt);
// }
//
//}
void dfs(int id){
if(id==0){
ans=max(ans,7*min({a[0]/2,a[1],a[2]/2,a[3]})+a[0]*a[0]+a[1]*a[1]+a[2]*a[2]+a[3]*a[3]);
return;
}
else{
a[0]++;
dfs(id-1);
a[0]--;
a[1]++;
dfs(id-1);
a[1]--;
a[2]++;
dfs(id-1);
a[2]--;
a[3]++;
dfs(id-1);
a[3]--;
}
}
signed main(){
cin >>n>>m;
cin >>s;
for(int i=0;i<s.size();i++){
if(s[i]=='k')a[0]++;
if(s[i]=='r')a[1]++;
if(s[i]=='o')a[2]++;
if(s[i]=='d')a[3]++;
}
dfs(m);
cout <<ans;
return 0;
}
//ddkkoorr
Details
小提示:点击横条可展开更详细的信息
Subtask #1:
score: 17
Accepted
Test #1:
score: 17
Accepted
time: 1ms
memory: 3444kb
input:
56 0 kkkkkkkkkkoooooooooorrrrrdddddkkkkkkkkkkooooooooookkkkoo
output:
1145
result:
ok "1145"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3396kb
input:
4 0 dkor
output:
4
result:
ok "4"
Test #3:
score: 0
Accepted
time: 1ms
memory: 3132kb
input:
11 0 krokodkroko
output:
44
result:
ok "44"
Test #4:
score: 0
Accepted
time: 1ms
memory: 3408kb
input:
10 0 kkkkkkkkkk
output:
100
result:
ok "100"
Test #5:
score: 0
Accepted
time: 0ms
memory: 3372kb
input:
100 0 krokodkrodkrokodkrodkrokodkrodkrokodkrodkrokodkrodkrokodkrodkrokodkrodkrokodkrodkrokodkrodkrok...
output:
2705
result:
ok "2705"
Subtask #2:
score: 26
Accepted
Test #6:
score: 26
Accepted
time: 0ms
memory: 3172kb
input:
8 1 kodrrrrr
output:
39
result:
ok "39"
Test #7:
score: 0
Accepted
time: 1ms
memory: 3292kb
input:
5 1 kroko
output:
17
result:
ok "17"
Test #8:
score: 0
Accepted
time: 1ms
memory: 3468kb
input:
11 1 krokodkroko
output:
54
result:
ok "54"
Test #9:
score: 0
Accepted
time: 1ms
memory: 3292kb
input:
87 1 kkkokokokokdokdokodkodkdokdokdokdodkodkokokdodkorkrrrrrrrrrrrrrrrrrrrrdkokokokdrokrodkk
output:
2099
result:
ok "2099"
Subtask #3:
score: 7
Accepted
Test #10:
score: 7
Accepted
time: 0ms
memory: 3444kb
input:
5 3 dodor
output:
30
result:
ok "30"
Test #11:
score: 0
Accepted
time: 1ms
memory: 3292kb
input:
3 3 kro
output:
18
result:
ok "18"
Test #12:
score: 0
Accepted
time: 0ms
memory: 3444kb
input:
2 4 rd
output:
26
result:
ok "26"
Test #13:
score: 0
Accepted
time: 6ms
memory: 3300kb
input:
100 10 krokokdokorkokodkokrokokdorkokokdkdkkdkdrrrrddrkdokodkrokdorkdokdrokrdordkordkdrokdrokdrokdro...
output:
3415
result:
ok "3415"