黑马程序员技术交流社区

标题: 分值算法(比赛日程安排) [打印本页]

作者: 王琪    时间: 2014-3-1 16:36
标题: 分值算法(比赛日程安排)
我把一个算法例子译成了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






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2