2014年去哪兒網筆試題--一個10*10的矩陣(可以理解為棋盤),隨時產生一組資料填入矩陣,任何一個位置的數字除4進行計算,按餘數著色...

來源:互聯網
上載者:User

標籤:style   blog   color   ar   for   資料   2014   div   sp   

一個10*10的矩陣(可以理解為棋盤),隨時產生一組資料填入矩陣,任何一個位置的數字除4進行計算,按餘數著色,餘數為0著色為red,1為blue,2為green,3為black,可以理解為產生4中顏色的棋子放入棋盤,如果存在其中同色五星連珠的情況(規則通五子棋),找出任意一組,輸出5個棋子的位置下標值。

只是用最笨的方法實現一下:

public class FiveColor {        public void test(){        int a[][]=new int[10][10];        for(int i=0;i<10;i++)            for(int j=0;j<10;j++)                a[i][j]=(int)((Math.random())*4);        System.out.println("初始化填充數組:");        for(int i=0;i<10;i++)        {            for(int j=0;j<10;j++)                System.out.print(a[i][j]+" ");            System.out.print("\n");        }        for(int i=0;i<10;i++)            for(int j=0;j<10;j++){                if(j+4<10&&a[i][j]==a[i][j+1]&&a[i][j]==a[i][j+2]&&a[i][j]==a[i][j+3]&&a[i][j]==a[i][j+4])                {                    System.out.println("橫向五子:");                    System.out.print("["+i+"]["+j+"]  ");                    System.out.print("["+i+"]["+(j+1)+"]  ");                    System.out.print("["+i+"]["+(j+2)+"]  ");                    System.out.print("["+i+"]["+(j+3)+"]  ");                    System.out.print("["+i+"]["+(j+4)+"]  \n");                }               if(i+4<10&&a[i][j]==a[i+1][j]&&a[i][j]==a[i+2][j]&&a[i][j]==a[i+3][j]&&a[i+4][j]==a[i][j])                {                    System.out.println("縱向五子:");                    System.out.print("["+i+"]["+j+"]  ");                    System.out.print("["+(i+1)+"]["+j+"]  ");                    System.out.print("["+(i+2)+"]["+j+"]  ");                    System.out.print("["+(i+3)+"]["+j+"]  ");                    System.out.print("["+(i+4)+"]["+j+"]  \n");                }               if(i-4>-1&&j+4<10&&a[i][j]==a[i-1][j+1]&&a[i][j]==a[i-2][j+2]&&a[i][j]==a[i-3][j+3]&&a[i-4][j+4]==a[i][j])               {                   System.out.println("正斜五子:");                   System.out.print("["+i+"]["+j+"]  ");                   System.out.print("["+(i-1)+"]["+(j+1)+"]  ");                   System.out.print("["+(i-2)+"]["+(j+2)+"]  ");                   System.out.print("["+(i-3)+"]["+(j+3)+"]  ");                   System.out.print("["+(i-4)+"]["+(j+4)+"]  \n");               }               if(i+4<10&&j+4<10&&a[i][j]==a[i+1][j+1]&&a[i][j]==a[i+2][j+2]&&a[i][j]==a[i+3][j+3]&&a[i+4][j+4]==a[i][j])               {                   System.out.println("反斜五子:");                   System.out.print("["+i+"]["+j+"]  ");                   System.out.print("["+(i+1)+"]["+(j+1)+"]  ");                   System.out.print("["+(i+2)+"]["+(j+2)+"]  ");                   System.out.print("["+(i+3)+"]["+(j+3)+"]  ");                   System.out.print("["+(i+4)+"]["+(j+4)+"]  \n");               }                                                      }                                      }        public static void main(String[] args)    {        FiveColor fc=new FiveColor();        fc.test();            }}

 

2014年去哪兒網筆試題--一個10*10的矩陣(可以理解為棋盤),隨時產生一組資料填入矩陣,任何一個位置的數字除4進行計算,按餘數著色...

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.