「ハンマーはさみ」ゲーム:

「ハンマーはさみ」ゲーム:

次に、両者の対立の記録を示し、双方の勝ち、引き分け、敗北の数を数え、双方のジェスチャーで勝つ可能性を最大限に高めてください。

入力の説明:
最初の行を入力して、正の整数N(<= 105)、つまり、両側が戦った回数を指定します。次のN行では、各行は対立に関する情報、つまり、両方の当事者によって同時に与えられたジェスチャーを示します。Cは「ハンマー」、Jは「はさみ」、Bは「
布」、最初の文字はパーティーA、2番目の文字はパーティーBを表し、間にスペースがあります。

出力の説明:出力の
1行目と2行目は、それぞれAとBの勝ち、引き分け、負けの数を示しています。数字はスペースで区切られています。3行目は、AとBの勝ち数が最も多いジェスチャを、間にスペースを入れて表す2文字を示しています。解が一意でない場合は、アルファベット順に最小の解が出力されます。

この質問では、2次元配列と2番目の配列を使用して、結果の記録を支援できます。答え
は次のとおりです。

//package winCount;

import java.util.Scanner;

public class Main {
    
    
    public static void main(String[] args) {
    
    
        Scanner sc=new Scanner(System.in);
        String num= sc.nextLine();
        int n=Integer.parseInt(num);
        char[] ch=new char[]{
    
    'B','C','J'};
        int[] count=new int[3];//分别表示a胜,a平,a败
        int[][] arr=new int[3][2];
        for (int i = 0; i < n; i++) {
    
    
            char c1=sc.next().charAt(0);
            char c2=sc.next().charAt(0);
            int index1=0;int index2=0;
            for(int j=0;j<ch.length;j++){
    
    
                if(c1==ch[j]){
    
    
                    index1=j;
                }if(c2==ch[j]){
    
    
                    index2=j;
                }
            }
            switch (index1-index2){
    
    
                case 2:
                case -1://a胜
                    count[0]++;arr[index1][0]++;break;

                case 0:count[1]++;break;

                case -2:
                case 1://b胜
                    count[2]++;arr[index2][1]++;break;

            }
        }
            System.out.println(count[0]+" "+count[1]+" "+count[2]);
            System.out.println(count[2]+" "+count[1]+" "+count[0]);

            for(int j=0;j<2;j++){
    
    
                int max=arr[0][j];
                int key=0;
                for(int k=0;k<3;k++){
    
    
                    if(arr[k][j]>max){
    
    
                        max=arr[k][j];
                        key=k;
                    }
                }
                System.out.print(ch[key]);
                if(j==0){
    
    
                    System.out.print(" ");
                }
            }

    }
}

おすすめ

転載: blog.csdn.net/weixin_43815275/article/details/113665861