第四届“图灵杯”趣味网络邀请赛

排球

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

排球,是永远向上看的运动!

《排球少年》

众所周知,排球的计分规则是这样的:

  • 当一支队到 25 分并且领先 2 分及以上的时候获胜,若战成 24 分平,那么继续比赛,直到一队领先 2 分及以上时这一队获胜。

乌野和青城在县预赛中又遇上了,这场比赛是三局两胜制。请你当一回计分器,输出每局比赛的得分,并且在结束的时候输出哪一队获胜了。

Input

每一行,输入两个数 $$$opt, x$$$。$$$opt = 1$$$ 时表示青城连续拿下 $$$x$$$ 球,$$$opt = 2$$$ 时表示乌野连续拿下 $$$x$$$ 球。

当胜负已定时,停止读入。输入保证一定描述了一场合法的排球比赛,即比分不会出现异常的情况。

Output

前面 $$$2$$$ 或 $$$3$$$ 行,输出比分,青城在前,乌野在后。

在比赛结束后再输出一行,若青城获得大局胜利,输出 $$$1$$$,否则输出 $$$2$$$。

Examples

input

2 25
1 24
1 1
2 24
1 24
2 1
1 1
2 1
2 1

output

0:25
25:0
25:27
2

input

1 25
2 25
1 2
1 1
2 3
1 3
1 1
1 3
2 3
1 1
1 2
2 3
1 3
2 2
1 3
2 4
1 3
2 1
2 4
2 1
2 3
1 2
2 2

output

25:0
0:25
24:26
2

Note

Subtask 1 (50pts): 保证 $$$x=1$$$,即输入的每一行都只描述了一个球。

Subtask 2 (50pts): 输入行数保证小于 $$$1000$$$ 行。比分保证随时在 $$$1000$$$ 分的范围内。

#include<iostream>
#include<cstring>
using namespace std;
int main()
{const pai[7]={0,2,1,1,1,2,2};//pai[i]为1表示位置i是在前排,为2表示在后排
int pos[7];
int ch1,ch2,ch3,ch4;
int A,B,C,D,E,F;
memset(pos,0,sizeof(pos));//每个位置上的队员初始化为0
for (A=1;A<=6;A++){//这里的A表示一号队员的场地,以后类似!
if(A==1) continue;
pos[A]=1;
for (B=1;B<=6;B++){
if(B==2||pos[B]!=0)
continue;
pos[B]=2;
for (C=1;C<=6;C++){
if(C==3||pos[C]!=0)
continue;
pos[C]=3;
for (D=1;D<=6;D++){
if(D==4||pos[D]!=0)
continue;
pos[D]=4;
for (E=1;E<=6;E++){
if(E==5||pos[E]!=0)
continue;
pos[E]=5;
F=21-A-B-C-D-E;
if(F==6)
continue;
pos[F]=6;
ch1=(pai[A]!=2)&&(pai[F]!=2); //1、6号不再后排;
ch2=(pos[2]!=2)&&(pos[2]!=3)&&(pos[5]!=2)&&(pos[5]!=3);//2、3号不是二传手;
ch3=(pai[C]!=pai[D]);//3、4号不在同一排;
ch4=(pos[3]!=5)&&(pos[3]!=6)&&(pos[6]!=5)&&(pos[6]!=6);//5、6号不是副攻手;
if (ch1+ch2+ch3+ch4==4)
{
cout<<"一号队员在"<<A<<"场地"<<endl;
cout<<"二号队员在"<<B<<"场地"<<endl;
cout<<"三号队员在"<<C<<"场地"<<endl;
cout <<"四号队员在"<<D<<"场地"<<endl;
cout <<"五号队员在"<<E<<"场地"<<endl;
cout<<"六号队员在"<<F<<"场地"<<endl;
}
pos[F]=0;
pos[E]=0;
}
pos[D]=0;
}
pos[C]=0;
}
pos[B]=0;
}pos[A]=0;
}
return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值