codeforces Codeforces Round #597 (Div. 2) B. Restricted RPS 暴力模拟
2024-09-05 03:49:42
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
char x[];
char xx[];
int main() {
int t;
cin>>t;
while(t--) {
int a,b,c,n;
cin>>n>>a>>b>>c;
for(int i=; i<n; i++) xx[i]=;
scanf("%s",x);
int r=,p=,s=;
for(int i=; i<n; i++) {
if(x[i]=='R') r++;
else if(x[i]=='P') p++;
else s++;
}
int ans=;
ans+=min(r,b);
ans+=min(p,c);
ans+=min(s,a);
if(ans>=(n+)/) {
printf("YES\n");
for(int i=; i<n; i++) {
if(x[i]=='R'&&b>) {
xx[i]='P';
b--;
} else if(x[i]=='P'&&c>) {
xx[i]='S';
c--;
} else if(x[i]=='S'&&a>) {
a--;
xx[i]='R';
}
}
for(int i=; i<n; i++) {
if(xx[i]==) {
if(a>) {
printf("R");
a--;
} else if(b>) {
printf("P");
b--;
} else if(c>) {
c--;
printf("S");
}
} else printf("%c",xx[i]);
}
printf("\n");
} else {
printf("NO\n");
}
}
return ;
}
最新文章
- 用Metasploit破解Mysql用户名和密码
- Java自定义异常类
- 在iOS 应用中直接跳转到appstore的方法
- Minifying Angular应用时产生的问题
- Centos php项目发布问题
- 如何在PADS的封装中做非金属化孔
- jmeter测试手机app
- mac linux netstat -n
- careercup-树与图 4.3
- Android开发 解决AlertDialog中的EditText无法调出输入法的问题
- Android06-Fragment碎片
- 3.集--LinkedTransferQueue得知
- 通俗易懂地解决中文乱码问题(2) --- 分析解决Mysql插入移动端表情符报错 ‘incorrect string value: &#39;\xF0...
- SQL Server 索引维护sql语句
- 分布式任务调度平台XXL-JOB
- AngularJs with Webpackv1 升級到 Webpack4
- python 爬取可用
- 打造SharePoint之在线开发神器SPOnlineDevelopTool(一)——概述
- Python中生成器generator和迭代器Iterator的使用方法
- echarts中dataZoom的使用