为什么只通过用例1和3,求大佬解答
查看原帖
为什么只通过用例1和3,求大佬解答
726625
linjiaze_01楼主2022/5/15 16:40
import java.util.Scanner;

public class P3392 {
    static int N;
    static int M;
    static char[][] box;
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        N = sc.nextInt();
        M = sc.nextInt();
        sc.nextLine();
        box = new char[N][M];
        for (int i = 0; i < N; i++) {
            box[i]=sc.nextLine().toCharArray();
        }
        int[] Wnum = new int[N];
        int[] Bnum = new int[N];
        int[] Rnum = new int[N];

        int tempW=0;
        int tempB=0;
        int tempR=0;
        for (int i = 0; i < N; i++) {
            for (int j = 0; j < M; j++) {
                if(box[i][j]!='W'){
                    tempW++;
                }
                if(box[i][j]!='B'){
                    tempB++;
                }
                if(box[i][j]!='R'){
                    tempR++;
                }
            }
                Wnum[i]=tempW;
                Bnum[i]=tempB;
                Rnum[i]=tempR;

        }
        int Max=Integer.MAX_VALUE;
        int count=0;

        for (int i = 0; i < N-2; i++) {
            count+=Wnum[i];
            for (int j = i+1; j < N-1; j++) {
                count+=Bnum[j]-Bnum[i];
                count+=Rnum[N-1]-Rnum[j];
                if(count<Max ){
                    Max=count;
                }
                count=0;
            }
        }

        System.out.print(Max);

    }

}

2022/5/15 16:40
加载中...