其他分享
首页 > 其他分享> > 第二届蓝桥杯国际赛真题 试题A:猜拳

第二届蓝桥杯国际赛真题 试题A:猜拳

作者:互联网

试题A:猜拳
在这里插入图片描述
在这里插入图片描述

代码实现:

public static void main(String[] args) {
		Scanner scanner=new Scanner(System.in);
		//次数n
		int n=scanner.nextInt();
		//将每一次三个人的出拳结果以整数形式存入二维数组
		int[][] arr=new int [n][3];
		Scanner scanner2=new Scanner(System.in);
		for (int i = 0; i <n; i++) {
			String s=scanner2.nextLine();
			String[]str=s.split(" ");
			arr[i][0]=Integer.parseInt(str[0]);
			arr[i][1]=Integer.parseInt(str[1]);
			arr[i][2]=Integer.parseInt(str[2]);
		}
		
		//a,b,c分别代表三人的钱
		int a=0,b=0,c=0;
		for (int i = 0; i <n; i++) {
			//当有一个人出布,一个人出石头,一个人出剪刀,或者所有人都出一样的时,分不出胜负
			if(arr[i][0]!=arr[i][1]&&arr[i][0]!=arr[i][2]&&arr[i][2]!=arr[i][1]
					||arr[i][0]==arr[i][1]&&arr[i][0]==arr[i][2]&&arr[i][2]==arr[i][1]) {
				a=a;b=b;c=c;
			}
			
			if(arr[i][1]==arr[i][2]) {
				//A胜
				if(arr[i][0]==0&&arr[i][1]==1||arr[i][0]==1&&arr[i][1]==2||arr[i][0]==2&&arr[i][1]==0) {
					a+=2;b-=1;c-=1;
				}
				//A负
				if(arr[i][0]==0&&arr[i][1]==2||arr[i][0]==1&&arr[i][1]==0||arr[i][0]==2&&arr[i][1]==1) {
					a-=2;b+=1;c+=1;
				}
			}
			
			if(arr[i][0]==arr[i][2]) {
				//B胜
				if(arr[i][0]==1&&arr[i][1]==0||arr[i][0]==2&&arr[i][1]==1||arr[i][0]==0&&arr[i][1]==2) {
					a-=1;b+=2;c-=1;
				}
				//B负
				if(arr[i][0]==2&&arr[i][1]==0||arr[i][0]==0&&arr[i][1]==1||arr[i][0]==1&&arr[i][1]==2) {
					a+=1;b-=2;c+=1;
				}
			}
			
			if(arr[i][0]==arr[i][1]) {
				//C胜
				if(arr[i][2]==0&&arr[i][1]==1||arr[i][2]==1&&arr[i][1]==2||arr[i][2]==2&&arr[i][1]==0) {
					a-=1;b-=1;c+=2;
				}
				//C负
				if(arr[i][2]==0&&arr[i][1]==2||arr[i][2]==1&&arr[i][1]==0||arr[i][2]==2&&arr[i][1]==1) {
					a+=1;b+=1;c-=2;
				}
			}
		}
		
		System.out.println(a);
		System.out.println(b);
		System.out.println(c);
	}

标签:arr,猜拳,int,System,蓝桥,赛真题,str,&&,Scanner
来源: https://blog.csdn.net/qq_45711100/article/details/112687299