编辑代码

import java.util.Scanner;

public class MatrixInputAndChecker {

    public static String checkMatrix(int[][] matrix) {
        int n = matrix.length;
        int rowOfOnes = 0;
        int colOfOnes = 0;
        int sum=0;
        for(int i=0;i<n;i++){
            for(int j=0;j<n;j++){
                sum+=matrix[i][j];
            }
        }
        if (sum!=n){
            return "NO";
        }
        // 检查行
        for (int i = 0; i < n; i++) {
            if (allOnes(matrix[i])) {
                rowOfOnes++;
            }
        }

        // 检查列
        for (int j = 0; j < n; j++) {
            if (allOnesInCol(matrix, j)) {
                colOfOnes++;
            }
        }

        if (rowOfOnes == 1 && colOfOnes == 0) {
            return "YES-R";
        } else if (rowOfOnes == 0 && colOfOnes == 1) {
            return "YES-C";
        } else {
            return "NO";
        }
    }

    private static boolean allOnes(int[] row) {
        for (int num : row) {
            if (num != 1) {
                return false;
            }
        }
        return true;
    }

    private static boolean allOnesInCol(int[][] matrix, int col) {
        for (int i = 0; i < matrix.length; i++) {
            if (matrix[i][col] != 1) {
                return false;
            }
        }
        return true;
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int[][] matrix = new int[n][n];

        // 读取矩阵
        for (int i = 0; i < n; i++) {
            String row = scanner.next();
            for (int j = 0; j < n; j++) {
                matrix[i][j] = row.charAt(j) - '0';
            }
        }

        // 检查矩阵并输出结果
        String result = checkMatrix(matrix);
        System.out.println(result);
    }
}