アットウィキロゴ

うゆう

package jump;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
public class pro {
String mode;
    String[] koma=new String[7];
  int[] pos=new int[7];
  String[] hand=new String[7];  
  int[][] ban=new int[10][2];
   String[] grow=new String[7];  
   List<String> link_a = new ArrayList<String>();
List<String> link_b = new ArrayList<String>();
List<String> dic = new ArrayList<String>();
   int number;
String[] hash_chx=new String[500];
   List<String> link_plus = new ArrayList<String>();
   List<String> point = new ArrayList<String>();
 
    public static void main(String[] args) {
        pro test=new pro();
    }
 
    pro(){
 
 
        mode="先手";
        koma[1]="王";
        koma[2]="金";
        koma[3]="歩";
        koma[4]="王";
        koma[5]="歩";
        koma[6]="歩";
 
        pos[1]=2;
        pos[2]=1;
        pos[3]=3;
        pos[4]=8;
        pos[5]=7;
        pos[6]=9;
 
        hand[1]="先手";
        hand[2]="先手";
        hand[3]="先手";
        hand[4]="後手";
        hand[5]="後手";
        hand[6]="後手";
 
        grow[1]="不成";
        grow[2]="不成";
        grow[3]="不成";
        grow[4]="不成";
        grow[5]="不成";
        grow[6]="不成";
 
 
        int x1,y1;
        int n=0;
        for (y1=1;y1<4;y1++){
        for (x1=1;x1<4;x1++){
        n=n+1;
        ban[n][0]=x1;
        ban[n][1]=y1;        
        }}
 
        String hhh=hash();
 
    System.out.println(hhh);
 
       game sub=new game();
       sub.ban=ban;
       sub.koma=koma;
       sub.makedata(hhh);
    number=sub.number;
    hash_chx=sub.hash_chx;
 
        System.out.println(number);
 
      int s,sx;
       for(s=1;s<number+1;s++){
       link_a.add(hhh);
       link_b.add(hash_chx[s]);
       }
 
       int t;
       for(t=1;t<6;t++){
       link_plus.clear();
       for(s=0;s<link_b.size();s++){
       int h=0;    
       if(link_a.contains(link_b.get(s)))h=100;    
       if(link_plus.contains(link_b.get(s)))h=100; 
       if(h<50)link_plus.add(link_b.get(s));
       }  
        int tr;
       for(tr=0;tr<link_plus.size();tr++){
       game sub2=new game();
       sub2.ban=ban;
       sub2.koma=koma;
       sub2.makedata(link_plus.get(tr));
    number=sub2.number;
    hash_chx=sub2.hash_chx;    
        for(s=1;s<number+1;s++){
       link_a.add(link_plus.get(tr));
       link_b.add(hash_chx[s]);
       }
       }
       }
 
 
     check sub3=new check();
       sub3.link_a=link_a;
       sub3.link_b=link_b;
       sub3.makedata();
 point=sub3.point;
 dic=sub3.dic;
 
    System.out.println(point.get(0));
 
 
 
 
 
 
 
 
 
 
    }
 
 
 
     String hash(){
 
       String ha="";
       if (mode.equals("先手"))ha=ha+"w";
       if (mode.equals("後手"))ha=ha+"x";
       if (mode.equals("先手勝利"))ha=ha+"y";
       if (mode.equals("後手勝利"))ha=ha+"z";
 
       int s;
       for(s=1;s<7;s++){
       if(hand[s].equals("先手"))ha=ha+"p";    
       if(hand[s].equals("後手"))ha=ha+"q"; 
       }
 
       String w1="a,b,c,d,e,f,g,h,i,j";
       String[] ww=w1.split(",");
 
 
 
       for(s=1;s<7;s++){
       int sx=pos[s];    
       ha=ha+ww[sx];
       }
 for(s=1;s<7;s++){
       if(grow[s].equals("不成"))ha=ha+"k";    
       if(grow[s].equals("成"))ha=ha+"l";  
       }
 
        return ha; 
}
void writexml(String file){ 
 
    int s,sx;
 
try{ 
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file))); 
 
for(s=0;s<link_a.size();s++){  
pw.print(link_a.get(s)); 
pw.print(","); 
pw.println(link_b.get(s));    
}
 
 
System.out.println("ファイルに書きこみました。"); 
pw.close(); 
} catch(IOException ep){ System.out.println("入出力エラーです。"); } 
 
 
} 
 
 
 
}
 
最終更新:2018年04月16日 09:15