填空题A-剪刀、石头和布

填空题A-剪刀、石头和布

时间: 1ms        内存:128M

描述:

注:本题只需要提交填写部分的代码,请按照C++方式提交。

张三和李四通过玩剪刀、石头和布的游戏,采用五局三胜制确定胜负。
#include <iostream>
using namespace std;
int win(int x,int y)
{
/*
请填写该部分代码

*/
}

int main()
{
  int i,x,y,sum=0;
  const int N=5;
  for(i=0;i<N;i++){
     cin>>x>>y;
     sum += win(x,y);
  }
  if(sum<0)
    cout<<"张三胜"<<endl;
  else
    cout<<"李四胜"<<endl;
  return 0;
}

输入:

输入5局的对战情况(没有平局),1代表剪刀,2代表石头,3代表布。

输出:

谁胜

示例输入:

1 2
2 3
1 3
2 3
3 1

示例输出:

张三胜

提示:

参考答案(内存最优[532]):

program p1000(Input,Output); 
var 
	i,a,b,zhang,li:integer;
begin 
	zhang := 0;
	li := 0;
	for i:=1 to 5 do
		begin
		read(a,b);
		if a=1 then
			begin
			if b=2 then
				li := li+1;
			if b=3 then
				zhang := zhang+1;
			end;
		if a=2 then
			begin
			if b=1 then
				zhang := zhang+1;
			if b=3 then
				li := li+1;
			end;
		if a=3 then
			begin
			if b=2 then
				zhang := zhang+1;
			if b=1 then
				li := li+1;
			end;
		end;
	if zhang>li then
		write('李四胜')
	else
		write('张三胜');
end.

参考答案(时间最优[0]):


#include <iostream>
using namespace std;
int win(int x,int y)
{
    if(x==1&&y==3)
        return 1;
    if(x==2&&y==1)
        return 1;
    if(x==3&&y==2)
        return 1;
    return -1;
}

int main()
{
    int i,x,y,sum=0;
    const int N=5;
    for(i=0;i<N;i++){
        cin>>x>>y;
        sum += win(x,y);
    }
    if(sum<0)
        cout<<"张三胜"<<endl;
    else
        cout<<"李四胜"<<endl;
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注