A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王琪 中级黑马   /  2014-3-1 16:36  /  671 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我把一个算法例子译成了java
  1. package ext;
  2. import java.util.*;
  3. public class Text2 {
  4.         static final int MAX=64;
  5.         static int [][]a=new int [MAX+1][MAX+1];
  6.         public static void main(String[]args){
  7.                 int m;
  8.                 System.out.println("输入参赛人数:");
  9.                 Scanner in=new Scanner(System.in);
  10.                 m=new Integer(in.nextLine().trim());
  11.                 fun(1,m);
  12.                
  13.         }
  14.         public static void fun(int k,int n){
  15.                 if (n==2){
  16.                         a[k][1]=k;
  17.                         a[k][2]=k+1;
  18.                         a[k+1][1]=k+1;
  19.                         a[k+1][2]=k;
  20.                         pln();
  21.                 }else{
  22.                         fun(k,n/2);
  23.                         fun(k+n/2,n/2);
  24.                         for(int i=k ;i<k+n/2 ;i++ ){
  25.                                 for(int j=n/2+1;j<=n ;j++ ){
  26.                                         a[i][j]=a[i+n/2][j-n/2];
  27.                                 }System.out.println("-->");pln();
  28.                         }
  29.                         for(int i=k+n/2 ;i<k+n ;i++ ){
  30.                                 for(int j=n/2+1 ;j<=n ;j++ ){
  31.                                         a[i][j]=a[i-n/2][j-n/2];
  32.                                 }System.out.println("**");pln();
  33.                         }
  34.                 }
  35.        
  36.         }
  37.         public static void pln(){
  38.                 for(int i=1;i<=8;i++){
  39.                         for(int j=1;j<=8;j++){
  40.                                 System.out.print(a[i][j]+" ");
  41.                         }
  42.                         System.out.println();
  43.                 }
  44.                 System.out.println();
  45.         }
  46.        
  47. }
复制代码

输入参赛人数:
8
1 2 0 0 0 0 0 0
2 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

1 2 0 0 0 0 0 0
2 1 0 0 0 0 0 0
3 4 0 0 0 0 0 0
4 3 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

-->
1 2 3 4 0 0 0 0
2 1 0 0 0 0 0 0
3 4 0 0 0 0 0 0
4 3 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

-->
1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 0 0 0 0 0 0
4 3 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

**
1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

**
1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
5 6 0 0 0 0 0 0
6 5 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
5 6 0 0 0 0 0 0
6 5 0 0 0 0 0 0
7 8 0 0 0 0 0 0
8 7 0 0 0 0 0 0

-->
1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
5 6 7 8 0 0 0 0
6 5 0 0 0 0 0 0
7 8 0 0 0 0 0 0
8 7 0 0 0 0 0 0

-->
1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
5 6 7 8 0 0 0 0
6 5 8 7 0 0 0 0
7 8 0 0 0 0 0 0
8 7 0 0 0 0 0 0

**
1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
5 6 7 8 0 0 0 0
6 5 8 7 0 0 0 0
7 8 5 6 0 0 0 0
8 7 0 0 0 0 0 0

**
1 2 3 4 0 0 0 0
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
5 6 7 8 0 0 0 0
6 5 8 7 0 0 0 0
7 8 5 6 0 0 0 0
8 7 6 5 0 0 0 0

-->
1 2 3 4 5 6 7 8
2 1 4 3 0 0 0 0
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
5 6 7 8 0 0 0 0
6 5 8 7 0 0 0 0
7 8 5 6 0 0 0 0
8 7 6 5 0 0 0 0

-->
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 0 0 0 0
4 3 2 1 0 0 0 0
5 6 7 8 0 0 0 0
6 5 8 7 0 0 0 0
7 8 5 6 0 0 0 0
8 7 6 5 0 0 0 0

-->
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 0 0 0 0
5 6 7 8 0 0 0 0
6 5 8 7 0 0 0 0
7 8 5 6 0 0 0 0
8 7 6 5 0 0 0 0

-->
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 0 0 0 0
6 5 8 7 0 0 0 0
7 8 5 6 0 0 0 0
8 7 6 5 0 0 0 0

**
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 1 2 3 4
6 5 8 7 0 0 0 0
7 8 5 6 0 0 0 0
8 7 6 5 0 0 0 0

**
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 1 2 3 4
6 5 8 7 2 1 4 3
7 8 5 6 0 0 0 0
8 7 6 5 0 0 0 0

**
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 1 2 3 4
6 5 8 7 2 1 4 3
7 8 5 6 3 4 1 2
8 7 6 5 0 0 0 0

**
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 1 2 3 4
6 5 8 7 2 1 4 3
7 8 5 6 3 4 1 2
8 7 6 5 4 3 2 1

评分

参与人数 1黑马币 +5 收起 理由
何伟超 + 5

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马