[2016.4][京東暑期實習筆試]三子棋
package bupt.syh;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
char[][] inputMx = new char[3][3];
for (int i = 0; i < 3; i++) {
String line = in.nextLine();
for (int j = 0; j < 3; j++) {
inputMx[i][j] = line.charAt(j);
}
}
// 是否有人win
int someoneWon = isSomeoneWon(inputMx);
if (someoneWon == 1) {
System.out.println("1 won");
continue;
} else if (someoneWon == 2) {
System.out.println("2 won");
continue;
}
// 該誰下了
int count[] = count(inputMx);
if (count[0] == 5 && count[1] == 4) {
System.out.println("Draw");
} else if (count[0] == count[1]) {
System.out.println("1");
} else if (count[0] == count[1] + 1) {
System.out.println("2");
} else {
System.out.println("x");
}
}
}
public static int isSomeoneWon (char[][] mx) {
for (int i = 0; i < 3; i++) {
if (mx[i][0] == mx[i][1] && mx[i][0] == mx[i][2]) {
if (mx[i][0] == 'X') {
return 1;
} else if (mx[i][0] == 'O') {
return 2;
}
}
}
for (int i = 0; i < 3; i++) {
if (mx[0][i] == mx[1][i] && mx[0][i] == mx[2][i]) {
if (mx[0][i] == 'X') {
return 1;
} else if (mx[0][i] == 'O') {
return 2;
}
}
}
if (mx[0][0] == mx[1][1] && mx[0][0] == mx[2][2]) {
if (mx[0][0] == 'X') {
return 1;
} else if (mx[0][0] == 'O') {
return 2;
}
}
if (mx[2][0] == mx[1][1] && mx[2][0] == mx[0][2]) {
if (mx[1][1] == 'X') {
return 1;
} else if (mx[1][1] == 'O') {
return 2;
}
}
return 0;
}
public static int[] count(char[][] mx) {
int[] rst = new int[2];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (mx[i][j] == 'X') {
rst[0]++;
} else if (mx[i][j] == 'O') {
rst[1]++;
}
}
}
return rst;
}
}
相關文章
- 微軟暑期實習筆試題微軟筆試
- Python實現三子棋小遊戲Python遊戲
- C語言陣列實現三子棋C語言陣列
- C語言簡易三子棋C語言
- 美團2024屆暑期實習第一輪後端筆試詳解後端筆試
- 軟體測試暑期實習面試(2017)面試
- C語言 二維陣列實現三子棋的思路及程式碼C語言陣列
- 自學C 四月二十日_做了一個三子棋遊戲!!!遊戲
- 【面試】小東最少需要拉多少票才能讓她獲勝(京東實習筆試題)面試筆試
- 京東量化平臺學習筆記筆記
- 小米&海康威視 暑期實習前端面試前端面試
- 【面經】美團-前端&移動端暑期實習前端
- 網易互娛 遊戲研發 暑期實習面試面經遊戲面試
- 2019 CVTE 暑期實習前端面試前端面試
- Java學習筆記(七):五子棋AI演算法Java筆記AI演算法
- 2024暑期學習(三)
- 2018Android暑期實習面試總結Android面試
- 2024年暑期學習 (1)
- C++中x&(x-1)是什麼意思(京東筆試)C++筆試
- 京東2018校招Web前端工程師筆試有感Web前端工程師筆試
- 學習筆記之測試筆記
- 強化學習實戰 | 自定義Gym環境之井字棋強化學習
- 馬踏棋盤(棧實現)
- 【軟體測試】學習筆記筆記
- 騰訊實習筆試題--簡單計算器程式的c語言實現筆試C語言
- 16×16大小棋盤的五子棋小程式 Java實現Java
- 2019騰訊實習筆試題部分記錄+兩次電話面試筆記筆試面試筆記
- JMM測試利器-JCStress學習筆記筆記
- 京東後端實習一面(附詳解),秒掛!後端
- 軟體測試學習筆記:測試點總結筆記
- 【編碼】-360實習筆試程式設計題(二)-2016.03.29筆試程式設計
- java簡單練習-五子棋Java
- 強化學習實戰 | 表格型Q-Learning玩井字棋(二)強化學習
- 強化學習實戰 | 表格型Q-Learning玩井字棋(一)強化學習
- 大資料測試學習筆記之測試工具集大資料筆記
- Allure測試報告完整學習筆記測試報告筆記
- Jest 測試框架使用的學習筆記框架筆記
- Sqlite學習筆記(三)&&WAL效能測試SQLite筆記