最近爱上了五子棋,现在给你一个棋局,请你帮忙判断其中有没有五子连珠(超过五颗也算)。
admin
2024-03-23 23:44:35

NowCoder最近爱上了五子棋,现在给你一个棋局,请你帮忙判断其中有没有五子连珠(超过五颗也算)。

解析:

import java.util.*;
public class Main {static int[][] direction = {{0, 1}, {0, - 1}, {1, 0}, { - 1, 0}, {1, 1}, {1, - 1}, { - 1, 1}, { - 1, - 1}};public static void main(String[] args) {Scanner sc = new Scanner(System.in);while (sc.hasNext()) {Character[][] map = new Character[20][20];for (int i = 0; i < 20; i ++ ) {String s = sc.next();for (int j = 0; j < 20; j ++ ) {map[i][j] = s.charAt(j);}}if(check(map)) System.out.println("Yes");else System.out.println("No");}}public static boolean check(Character[][] map) {for (int i = 0; i < 20; i ++ ) {for (int j = 0; j < 20; j ++ ) {if(map[i][j] == '*' || map[i][j] == '+') {for (int k = 0; k < 8; k ++ ) {int count = 1;int x = i + direction[k][0];int y = j + direction[k][1];while (x >= 0 && x < 20 && y >= 0 && y < 20 && map[x][y] == map[i][j]) {count ++ ;x += direction[k][0];y += direction[k][1];}if(count == 5) return true;}}}}return false;}
}

相关内容

热门资讯

17道 特色旺销菜 恰恰茄子 原料: 糯长茄200克,香菜3克。 调料: 秘制茄子酱40克。 制作: 1.将长茄去皮后...
西藏攻略:7天6晚经典路线,带... 每年5月至10月,是西藏的季节,也是游客最多的时段。最近我们收到很多朋友的咨询:“次来西藏,只有7天...