题解 | #井字棋#

井字棋

http://www.nowcoder.com/practice/0375c1d206ef48a3894f72aa07b2fdde

解题思路

import java.util.Scanner;

public class Main{
    
    public static void main(String[] args){
        
        Scanner sin = new Scanner(System.in);
        String[] c = new String[9];
        int ic = 0;
        while(sin.hasNext()){
            c[ic++] = sin.next();
        }
        
        // 把一维数组变成二维数组 
        String[][] cc = new String[3][3];
        int con = 0;
        for(int n = 0;n<3;n++){
            for(int m=0;m<3;m++){
                cc[n][m] = c[con++];
            }
        }
        
        // 玩 “井”字棋
        String s = print1(cc);
        String s2 = print2(cc);
        String s3 = print3(cc);
       if(s.equals("K") || s2.equals("K") || s3.equals("K")){
           System.out.println("KiKi wins!");
       }else if(s.equals("B") || s2.equals("B") || s3.equals("B")){
        System.out.println("BoBo wins!");
       }else {
           System.out.println("No winner!");
       }
       
    }
    
    public static String print1(String[][] list){
        String s = "";
        for(int n = 0;n<3;n++){
            for(int m=0;m<3;m++){
                s += list[n][m];
            }
            if(s.equals("KKK")){
                return "K";
            }else if(s.equals("BBB")){
                return "B";
            }
           //清空字符串
            s = "";
        }
        return "O";
    }
    
        public static String print2(String[][] list){
        String s = "";
            int i = 0;
        for(int n = 0;n<3;n++){
            for(int m=0;m<3;m++){
                s += list[m][i];
            }
            i++;
            if(s.equals("KKK")){
                return "K";
            }else if(s.equals("BBB")){
                return "B";
            }
           //清空字符串
            s = "";
        }
        return "O";
    }
    
      public static String print3(String[][] list){
        String s = "";
        for(int n = 0;n<1;n++){
            for(int m=0;m<3;m++){
                s += list[m][m];
                
            }
            if(s.equals("KKK")){
                return "K";
            }else if(s.equals("BBB")){
                return "B";
            }
           //清空字符串
            s = "";
        }
          
          int t = 2;
        for(int n = 0;n<1;n++){
            for(int m=0;m < 3;m++){
                s += list[m][t--];
                
            }
            if(s.equals("KKK")){
                return "K";
            }else if(s.equals("BBB")){
                return "B";
            }
           //清空字符串
            s = "";
        }
        return "O";
    }
}
全部评论

相关推荐

09-22 09:42
门头沟学院 Java
牛客37185681...:马德,我感觉这是我面过最恶心的公司,一面是两个女hr,说什么实习前几个月属于试用期,试用期过了才能转成正式实习生,我***笑了,问待遇就是不说,问能不能接受全栈,沙币公司
如果可以选,你最想去哪家...
点赞 评论 收藏
分享
10-29 18:20
济南大学 Java
无语的太平湖水怪在看...:刷KPI的吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务