日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

【华为笔试】【模拟】【Java】竖直四子棋

發布時間:2023/12/8 java 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【华为笔试】【模拟】【Java】竖直四子棋 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

■ 題目描述
豎直四子棋的棋盤是豎立起來的,雙方輪流選擇棋盤的一列下子,棋子因重力落到棋盤底部或者其他棋子之上,當一列的棋子放滿時,無法再在這列上下子。
一方的4個棋子橫、豎或者斜方向連成一線時獲勝。
現給定一個棋盤和紅藍對弈雙方的下子步驟,判斷紅方或藍方是否在某一步獲勝。
下面以一個6×5的棋盤圖示說明落子過程:

下面給出橫、豎和斜方向四子連線的圖示:

輸入描述
輸入為2行,第一行指定棋盤的寬和高,為空格分隔的兩個數字;
第二行依次間隔指定紅藍雙方的落子步驟,第1步為紅方的落子,第2步為藍方的落子,第3步為紅方的落子,以此類推。
步驟由空格分隔的一組數字表示,每個數字為落子的列的編號(最左邊的列編號為1,往右遞增)。用例保證數字均為32位有符號數。
輸出描述
如果落子過程中紅方獲勝,輸出 N,red ;
如果落子過程中藍方獲勝,輸出 N,blue ;
如果出現非法的落子步驟,輸出 N,error。
N為落子步驟的序號,從1開始。如果雙方都沒有獲勝,輸出 0,draw 。
非法落子步驟有兩種,一是列的編號超過棋盤范圍,二是在一個已經落滿子的列上落子。
N和單詞red、blue、draw、error之間是英文逗號連接。
示例1 輸入輸出示例僅供調試,后臺判題數據一般不包含示例
輸入
5 5
1 1 2 2 3 3 4 4
輸出
7,red
說明
在第7步,紅方在第4列落下一子后,紅方的四個子在第一行連成一線,故紅方獲勝,輸出 7,red。
示例2 輸入輸出示例僅供調試,后臺判題數據一般不包含示例
輸入
5 5
0 1 2 2 3 3 4 4
輸出
1,error
說明
第1步的列序號為0,超出有效列編號的范圍,故輸出 1,error。

public class VerticalChess {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String[] nums = sc.nextLine().split(" ");int rowLen = Integer.parseInt(nums[0]);int colLen = Integer.parseInt(nums[1]);String[] str = sc.nextLine().split(" ");int[][] grids = new int[rowLen][colLen];boolean isOver = false;for (int i = 0; i < str.length; i++) {int index = -1;int color = 1;int num = Integer.parseInt(str[i]);// 判斷是否合法: 落子點在棋盤范圍之外或者落子點已經有棋if (num <= 0 || num > colLen || grids[0][num - 1] != 0) {isOver = true;System.out.println(i + 1 + ",error");break;}// 判斷落子的是哪個顏色,1默認表示為red,2為blueif (i % 2 != 0) {color = 2;}// 落子到對應的位置for (int j = rowLen - 1; j >= 0; j--) {if (grids[j][num - 1] == 0) {index = j; // 此時棋子橫坐標為j,縱坐標為num-1grids[j][num - 1] = color;break;}}// 判斷index是否合法if (index == -1) {System.out.println(i + 1 + ",error");isOver = true;break;}// 判斷棋子是否超過6,并且判斷是否能連接4個棋子if (i >= 6 && isSuccess(grids, index, num - 1)) {if (color == 1) {System.out.println(i + 1 + ",red");isOver = true;break;} else {System.out.println(i + 1 + ",blue");isOver = true;break;}}}// 判斷是否已滿if (!isOver) {System.out.println("0,draw");}}private static boolean isSuccess(int[][] grids, int row, int col) {int m = grids.length;int n = grids[0].length;int count = 0;int statist = 3; //統計棋子相連數量// 橫向右相連if (col < n - 3) {int r = row;int c = col;while (statist != 0 && grids[r][++c] == grids[r][c]) {count++;statist--;}if (count == 3) {return true;}count = 0;statist = 3;}// 橫向左相連if (col>=3){int r = row;int c = col;while (statist != 0 && grids[r][--c] == grids[r][c]) {count++;statist--;}if (count == 3) {return true;}count = 0;statist = 3;}// 縱向向下相連if (row<m-3){int r = row;int c = col;while (statist != 0 && grids[++r][c] == grids[r][c]) {count++;statist--;}if (count == 3) {return true;}count = 0;statist = 3;}// 縱向向上相連if (row>=3){int r = row;int c = col;while (statist != 0 && grids[--r][c] == grids[r][c]) {count++;statist--;}if (count == 3) {return true;}count = 0;statist = 3;}// 左斜相連if (row<m-3&&col>=3){int r = row;int c = col;while (statist != 0 && grids[++r][--c] == grids[r][c]) {count++;statist--;}if (count == 3) {return true;}count = 0;statist = 3;}// 右斜相連if (row<m-3&&col<n-3){int r = row;int c = col;while (statist != 0 && grids[++r][++c] == grids[r][c]) {count++;statist--;}if (count == 3) {return true;}count = 0;statist = 3;}return false;} }

總結

以上是生活随笔為你收集整理的【华为笔试】【模拟】【Java】竖直四子棋的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品中文字幕在线 | 日韩欧美在线观看免费 | 日韩免费视频观看 | 国产在线超碰 | 裸体黄色片| 肉丝美足丝袜一区二区三区四 | 欧美熟女一区二区 | 亚洲网站在线观看 | 热久久亚洲 | 69pao| 蜜桃久久精品 | 色多多在线观看 | 毛片9 | 99久久久久久久久久 | 亚洲男人av| 日韩网站免费观看高清 | 国产成人精品国内自产拍免费看 | 免费搞黄网站 | 最近中文字幕在线中文高清版 | 黄色国产在线观看 | 日本涩涩视频 | 日本欧美黄色 | 免费高清视频一区二区三区 | 嫩草影院av | 欧美日本在线 | 国产亚洲精品aaaaaaa片 | 久久久夜色精品亚洲 | 国产一区二区在线播放视频 | 欧美成年人网站 | 蘑菇av| 亚洲一区二区激情 | 久久99网| 国产一区二区三区欧美 | 国产性―交―乱―色―情人 | 久久久高潮 | 欧美偷拍精品 | 国产乱子一区二区 | 亚洲人无码成www久久 | 久久精品99国产精 | 国产剧情一区 | 国产伦精品一区二区三区免费迷 | 97色涩| 超碰91人人| 国产一级生活片 | 徐锦江一级淫片免费看 | 德国性经典xxxx性hd | 狠狠躁日日躁 | 久草国产在线观看 | 精品九九九九九 | 黄色一级大片 | 美女亚洲一区 | 国产熟女精品视频 | 在线天堂中文字幕 | 黄色片网站在线 | 九九九国产 | 大陆av片 | 国产精品国产成人国产三级 | 国产在线观看免费播放 | 少妇又色又爽又黄的视频 | 全黄毛片 | av高清在线免费观看 | 最新色站| jav中文字幕 | 色多多视频网站 | 日日干日日草 | 欧美日韩国产片 | 亚洲一级在线观看 | 欧美三级视频在线 | 狠狠爱欧美 | 久久久香蕉视频 | 熟女精品一区二区三区 | 精品国产乱码久久久久夜深人妻 | 国产激情无码一区二区三区 | 亚洲永久无码精品一区二区 | 亚洲av不卡一区二区 | 天天射一射 | 一女二男一黄一片 | 三年中文在线观看中文版 | 干成人网| 国产福利片在线 | 欧美日韩三区 | 韩国伦理在线 | 中文字幕一区二区三区免费视频 | 国产这里有精品 | 麻豆911| 国产男女无套 | 欧美在线性视频 | 亚洲综合第一页 | 老外一级黄色片 | 日韩免费网| 亚洲成a人片777777久久 | 欧美9999 | 天堂av官网 | 亚洲爆爽av| 国产精品3| 久久精品屋 | 欧美国产一二三区 | 日日躁狠狠躁 | 亚洲av无码一区二区三区在线 |