Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
48212 | 呵呵 | 【AB-1】比赛 | C++ | 运行出错 | 0 | 0 MS | 248 KB | 1544 | 2022-04-10 21:58:16 |
#include <bits/stdc++.h> using namespace std; char m; int n,t; int f[10000],q[10000]; inline int read() { int x=0; char c=getchar(); for(; c<'0' || c>'9'; c=getchar()); for(; c<='9' && c>='0'; c=getchar()) x=(x<<3)+(x<<1)+c-'0'; return x; } void ss(int j) { if(f[j+2]==9) { if(f[j+1]==9) return ; else if(f[j+1]==0) { f[j+1]=1; f[j]--; return; } else { q[j+1]+=1; f[j]--; return; } } else if(f[j+2]==0) { f[j+2]=1; f[j]--; return; } else { q[j+2]+=1; f[j]--; return; } } int main() { freopen("race.in","r",stdin); freopen("race.out","w",stdout); n=read(),t=read(); for(int i=1; i<=n; i++) { m=getchar(); if(m=='G') f[i]=9; else if(m=='R') f[i]=1; } getchar(); for(int i=1; i<=t; i++) { n+=3; for(int j=1; j<=n; j++) { if(f[j]==0 || f[j]==9) continue; for(int i=f[j]; i>0; i--) ss(j); } for(int i=1; i<=n+3; i++) { if(q[i]==0) { if(f[i]==9) putchar('G'); else if(f[i]==0) continue; else if(f[i]==1) putchar('R'); else printf("R(%d)",f[i]); } else { f[i]+=q[i]; if(f[i]==1) putchar('R'); else printf("R(%d)",f[i]); } } memset(q,0,sizeof(q)); printf("\n"); } return 0; }