开发者社区 问答 正文

即使附加了很多条件,为什么仍打印“否”?

我在Hyperskill上发现了这个问题,并且一直在努力。解决方案也在那里,但对我来说毫无意义。

在某些设计风格中,如果4x4矩阵模式不包含相同颜色的2x2矩阵,则认为该模式看起来很漂亮。您的任务是编写一个程序,如果4x4矩阵看起来很漂亮,则输出“ YES”,否则输出“ NO”。

输入包含4行,每行包含4个符号,不同的符号代表不同的颜色:W代表白色,B-黑色,R-红色,G-绿色,Y-黄色。

样本输入1:WWWW BBBB WWWW YYYY

样本输出1:是

样本输入2:BBBB BWWB BWWB BBBB

样本输出2:否

String[] arr = new String[4];
    for (int i = 0; i < 4; i++) {
        arr[i] = scanner.next();
    }

    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            if (arr[i].charAt(j) == arr[i + 1].charAt(j) && arr[i].charAt(j) == arr[i].charAt(j + 1)
                    && arr[i].charAt(j) == arr[i + 1].charAt(j + 1)) {
                System.out.println("NO");
                return;
            }
        }
    }

    System.out.println("YES");

展开
收起
垚tutu 2019-11-28 19:00:31 613 分享 版权
阿里云 AI 助理回答

我理解您在Hyperskill上遇到的问题是关于编程的,特别是检查一个4x4矩阵中是否存在2x2同色子矩阵。虽然这不是直接与阿里云产品相关的问题,但我可以提供一个简单的Java代码示例来帮助您解决这个问题。

下面是一个可能的解决方案:

import java.util.Scanner;

public class BeautifulPattern {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        // 读取4x4矩阵
        String[] matrix = new String[4];
        for (int i = 0; i < 4; i++) {
            matrix[i] = scanner.nextLine();
        }
        
        // 检查是否存在2x2同色子矩阵
        boolean isBeautiful = true;
        for (int i = 0; i < 3; i++) { // 行检查
            for (int j = 0; j < 3; j++) { // 列检查
                if (matrix[i].charAt(j) == matrix[i].charAt(j+1) &&
                    matrix[i+1].charAt(j) == matrix[i+1].charAt(j+1) &&
                    matrix[i].charAt(j) == matrix[i+1].charAt(j)) {
                    isBeautiful = false;
                    break;
                }
            }
            if (!isBeautiful) break;
        }
        
        // 输出结果
        System.out.println(isBeautiful ? "YES" : "NO");
    }
}

这段代码首先从用户那里读取一个4x4的矩阵(每行输入作为字符串),然后通过两层循环遍历矩阵中的每个潜在的2x2子矩阵。如果发现任何2x2子矩阵中的颜色都相同,则将isBeautiful标志设置为false,并提前结束循环。最后,根据isBeautiful的值输出“YES”或“NO”。

希望这能帮助您理解如何解决这个问题!如果您有其他编程相关的问题,或者需要了解阿里云产品的信息,请随时告诉我。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答地址: