CodeForces - 749C Voting 队列模拟

来源:互联网 发布:micro800编程软件下载 编辑:程序博客网 时间:2024/04/28 02:25
#include<stdio.h>
#include<iostream>#include<queue>using namespace std;queue<int>q[2];char str[200005];int main(){int n; scanf("%d%*c",&n);gets(str+1);int num1,num2,d1,d2;num1=num2=d1=d2=0;for(int i=1;i<=n;i++){if(str[i]==str[1]){num1++;}else {num2++;}q[1].push(i);}int e=1;while(1){while(!q[e].empty()){int x=q[e].front();q[e].pop();if(str[x]==str[1]){if(d1>0){num1--;if(num1==0)break;d1--;}else {d2++;q[e^1].push(x);}}else {if(d2>0){num2--;if(num2==0)break;d2--;}else {d1++;q[e^1].push(x);}}}if(num1==0||num2==0)break;e=e^1;}if(num2==0){printf("%c\n",str[1]);}else printf("%c\n",'D'+'R'-str[1]);return 0;}

0 0
原创粉丝点击