当前位置: 首页 > news >正文

网页设计与制作实训总结2000字百度免费优化

网页设计与制作实训总结2000字,百度免费优化,网站域名怎么做分录,廊坊做网站电话题目链接 井字游戏 题目描述 注意点 1 < board.length board[i].length < 100输入一定遵循井字棋规则 解答思路 如果某一方想要获胜&#xff0c;则其需要占满某一行或某一列或对角线&#xff0c;所以只需要根据第一行和第一列判断是否填充完某一行或某一列或对角线…

题目链接

井字游戏

题目描述


注意点

  • 1 <= board.length == board[i].length <= 100
  • 输入一定遵循井字棋规则

解答思路

  • 如果某一方想要获胜,则其需要占满某一行或某一列或对角线,所以只需要根据第一行和第一列判断是否填充完某一行或某一列或对角线即可
    • 对于第一行,可以根据该行每一列的字符判断该列是否被该字符填充完(如果是空则可直接跳过)
    • 对于第一列,可以根据该列每一行的字符判断该行是否被该字符填充完(如果是空则可直接跳过)
    • 对于左上角,需要额外判断主对角线是否被该字符填充完(如果是空则可直接跳过)
    • 对于右上角,需要额外判断副对角线是否被该字符填充完(如果是空则可直接跳过)
  • 如果没有一方获胜,还需要判断游戏是已结束(平局)还是未结束,是否结束取决于棋盘中是否还有位置未填充字符,所以需要用isFinished记录棋盘中是否还有空字符,如果有说明未结束

代码

class Solution {int n;boolean isFinished;public String tictactoe(String[] board) {isFinished = true;n = board.length;// 判断字符是否填充完某一行for (int row = 0; row < n; row++) {if (board[row].charAt(0) == ' ') {isFinished = false;} else {char c = board[row].charAt(0);if (isRow(row, c, board)) {return String.valueOf(c);}}}// 判断字符是否填充完某一列for (int col = 0; col < n; col++) {if (board[0].charAt(col) == ' ') {isFinished = false;} else {char c = board[0].charAt(col);if (isCol(col, c, board)) {return String.valueOf(c);}}}// 左上角的点判断是否满足主对角线if (board[0].charAt(0) == ' ') {isFinished = false;} else {char c = board[0].charAt(0);if (isMain(c, board)) {return String.valueOf(c);}}// 右上角的点判断是否满足副对角线if (board[0].charAt(n - 1) == ' ') {isFinished = false;} else {char c = board[0].charAt(n - 1);if (isSub(c, board)) {return String.valueOf(c);}}return isFinished ? "Draw" : "Pending";}public boolean isRow(int row, char c, String[] board) {for (int col = 0; col < n; col++) {if (board[row].charAt(col) == c) {continue;}if (board[row].charAt(col) == ' ') {isFinished = false;}return false;}return true;}public boolean isCol(int col, char c, String[] board) {for (int row = 0; row < n; row++) {if (board[row].charAt(col) == c) {continue;}if (board[row].charAt(col) == ' ') {isFinished = false;}return false;}return true;}public boolean isMain(char c, String[] board) {for (int i = 0; i < n; i++) {if (board[i].charAt(i) == c) {continue;}if (board[i].charAt(i) == ' ') {isFinished = false;}return false;}return true;}public boolean isSub(char c, String[] board) {for (int i = 0; i < n; i++) {if (board[i].charAt(n - i - 1) == c) {continue;}if (board[i].charAt(n - i - 1) == ' ') {isFinished = false;}return false;}return true;}
}

关键点

  • 井字棋取胜的规律
  • 注意边界问题
http://www.yayakq.cn/news/613361/

相关文章:

  • 网站备案需要的资料dedecms资源下载模板
  • 互动的网站自己的电脑做服务区 网站
  • 行业 网站 方案广告创意设计公司
  • 如何管理建好的网站华为云助力企业网站安全保障
  • 网站推广排名收费标准wordpress打开慢 cdn
  • 做不锈钢百度网站哪个比较好做简历的网站viso
  • dede静态网站模板下载有可以做ssgsea的网站么
  • 文章管理系统网站模板网站头部导航样式
  • 做网站如何用模板怎样给公司做免费网站
  • 国家网站建设宿迁百度seo
  • 怎样制作个人网站找网页设计师
  • 引航博景做的网站微信公众平台开发模式
  • 钟祥网站制作网站设计在线培训
  • 企业网站建设有哪些优势网络工程师证书含金量
  • 网站做xss过滤淘客app定制开发
  • 竞猜网站模板百度推广工具有哪些
  • 卡片式设计网站广告代运营公司
  • 成都兴光华城市建设公司网站百度一下你就知道移动官网
  • 天津制作网站公司seo友情链接
  • 北京网站建设公司网络营销外包网络建站报价建筑专业网站
  • 呼市做开发网站的公司无忧商务网
  • 无锡网站推广哪家好flash网站尺寸
  • 大连商城网站制作公司国际电商怎么做
  • 霞山网站建设公司平价网站平价网站建设建设
  • 电子商务网站开发实践网络营销策略的特点
  • c 网站开发需要学什么软件有哪些巨鹿网站建设公司
  • 专业的公司网站建设九江开发区建设环保局网站
  • 宁波网站建设最好的是哪家网站模板 国外
  • 网站百度文库电脑网站打不开了但是有网
  • 童装网站建设做视频网站的备案要求吗