Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
48236 MattL 【AB-1】比赛 C++ 通过 100 0 MS 280 KB 1321 2022-04-11 11:08:04

Tests(10/10):


#include <bits/stdc++.h> using namespace std; int n,t; struct qp{ bool val;//鏄笉鏄疪 int cnt; }a[1000],b[1000]; char tt; int main() { cin>>n>>t; for(int i=1;i<=n;i++) cin>>tt,a[i]=(qp){(tt=='R'),1}; while(t--) { for(int i=1;i<=250;i++) if(!a[i].val) b[i]=a[i]; for(int i=1;i<=250;i++) { if(a[i].cnt&&a[i].val) { if(!b[i+2].cnt) b[i+2]=a[i],a[i].cnt=0; else if(b[i+2].val) b[i+2].cnt+=a[i].cnt,a[i].cnt=0; else if(!b[i+1].cnt) b[i+1]=a[i],a[i].cnt=0; else if(b[i+1].val) b[i+1].cnt+=a[i].cnt,a[i].cnt=0; else if(!b[i].cnt) b[i]=a[i],a[i].cnt=0; else b[i].cnt+=a[i].cnt,a[i].cnt=0; } } for(int i=1;i<=250;i++) if(b[i].cnt) { if(b[i].cnt>1) printf("%c(%d)",b[i].val?'R':'G',b[i].cnt); else printf("%c",b[i].val?'R':'G'); } memcpy(a,b,sizeof(b)); memset(b,0,sizeof(b)); cout<<endl; } return 0; }


测评信息: