HDU 2537:8球勝負
Problem Description
8球はビリヤード競技のルールです.台の上には赤いボールが7つ、黄色いボールが7つ、黒いボールが1つあります.もちろん白いボールもあります.本題では、赤、黄の2人の選手が交代で白球でそれぞれの色のボールを打ち、その色の7つのボールを全部打ち込めば、この選手は黒球を打つことができ、打ち込めば勝つという簡略化されたルールを使用します.自分の色のすべてのボールを打ち込む前に黒いボールを打ち込んだら、負けます.選手が誤って相手のボールを打ち込んだら、ゴールは依然として有効だ.
今、打ち込んだボール(白球を除く)の順番と、黒球がどちらから打ち込まれたか、あなたの任務はどちらが勝者なのかを判定することです.
ブラックボールと他のカラーボールを同時に打つことはないと仮定します.
Input
複数セットのデータを入力します.各組のデータの1行目は整数N(1<=N<=15)であり、打ち込まれた球の個数を表し、N=0は終了を表す.次に、N文字を含む行があり、どのボールが打ち込まれたかを順番に表します.「B」であれば、赤が打った黒球、「L」であれば、黄が打った黒球を表す.「Y」なら黄色い球、「R」は赤い球を表す.文字間にスペースはありません.
すべての入力は以下の条件を満たしています:最後のボールが打ち込まれた時、この試合はちょうど終わって、しかも打ち込んだ赤いボールと黒いボールはすべて7つを超えません.
Output
各グループのデータに対して、1行出力します.赤い方が勝てば、「Red」を出力する.黄方勝、出力「Yellow」.
Sample Input
Sample Output
8球はビリヤード競技のルールです.台の上には赤いボールが7つ、黄色いボールが7つ、黒いボールが1つあります.もちろん白いボールもあります.本題では、赤、黄の2人の選手が交代で白球でそれぞれの色のボールを打ち、その色の7つのボールを全部打ち込めば、この選手は黒球を打つことができ、打ち込めば勝つという簡略化されたルールを使用します.自分の色のすべてのボールを打ち込む前に黒いボールを打ち込んだら、負けます.選手が誤って相手のボールを打ち込んだら、ゴールは依然として有効だ.
今、打ち込んだボール(白球を除く)の順番と、黒球がどちらから打ち込まれたか、あなたの任務はどちらが勝者なのかを判定することです.
ブラックボールと他のカラーボールを同時に打つことはないと仮定します.
Input
複数セットのデータを入力します.各組のデータの1行目は整数N(1<=N<=15)であり、打ち込まれた球の個数を表し、N=0は終了を表す.次に、N文字を含む行があり、どのボールが打ち込まれたかを順番に表します.「B」であれば、赤が打った黒球、「L」であれば、黄が打った黒球を表す.「Y」なら黄色い球、「R」は赤い球を表す.文字間にスペースはありません.
すべての入力は以下の条件を満たしています:最後のボールが打ち込まれた時、この試合はちょうど終わって、しかも打ち込んだ赤いボールと黒いボールはすべて7つを超えません.
Output
各グループのデータに対して、1行出力します.赤い方が勝てば、「Red」を出力する.黄方勝、出力「Yellow」.
Sample Input
5
RYRRB
9
RRRRYRRRB
0
Sample Output
Yellow
Red
#include <stdio.h>
int main()
{
int n,i,red,yellow,f;// f ,f=1 ,f=0
char c;
while(scanf("%d",&n)!=EOF && n)
{
getchar();//
yellow = red = 0;
for(i = 1; i<=n-1; i++)
{
c = getchar();
if(c == 'R')
red++;//
else if(c == 'Y')
yellow++;//
}
c = getchar();//
if(c == 'B' && red != 7)
f = 0;
else if(c == 'L' && yellow != 7)
f = 1;
else if(c == 'B' && red == 7)
f = 1;
else if(c == 'L' && yellow == 7)
f = 0;
if(f)
printf("Red
");
else
printf("Yellow
");
}
return 0;
}