アットウィキロゴ

akatyki

package match;
 
import tool.*;
 
 
 
public class pro {
 
 int[] point=new int[5001];
 int[] r=new int[5001];
 int[] matchx=new int[5001];
 int[] matchy=new int[5001];
 int[] rs=new int[5001];
 
   int datanumber;
    String[] data=new String[5000];
   String[] name=new String[5000];
 
    public static void main(String[] args) {
        pro t=new pro();
    }
    pro(){
 
 
 readfile sub2=new readfile();
        sub2.makedata("data.csv","UTF-8");
        data=sub2.data;
        datanumber=sub2.datanumber;
        int s;
 
           for(s=1;s<datanumber;s++){
  String[] x=data[s+1].split(",");
   point[s]=num_int(x[2]);
     name[s]=x[0]+x[1];
           }
 
 
 
 
int number=datanumber-1;
 
 
 
        for(s=1;s<number+1;s++){   
        r[s]=(int)(100*Math.random())+1;
        }
 
        int tr;
        for(tr=1;tr<11;tr++){
 
        int sx,n,ns;
        double minz;
        for(s=1;s<number+1;s++){
 
       ns=1;
       minz=999999;
        for(n=1;n<101;n++){
      double  z=0;
       for(sx=1;sx<number+1;sx++){
        double z1=(double)n/(n+r[sx]);   
       if(point[s]>point[sx])z=z+(1-z1)*(1-z1);
       if(point[s]<point[sx])z=z+z1*z1;
       }
 
       if(minz>z)ns=n;
        if(minz>z)minz=z;
        }
        rs[s]=ns;
 
        }
 
        int tt=0;
        for(s=1;s<number+1;s++){   
        tt=tt+rs[s];
 
        }
 
        int t1=tt/number;
         for(s=1;s<number+1;s++){   
        r[s]=rs[s]+(50-t1);
        }
 
 
        }
 
 
          for(s=1;s<number+1;s++){   
        System.out.println(name[s]+","+r[s]+","+point[s]);
        }
 
 
 
    }
  int num_int(String str){
 
    int nx;
 
    nx=0;
 
 try{
 
    nx=Integer.parseInt(str);
 
 }catch (Exception e) {}
 
 return nx;
 
 
 
}    
 
 
 
 
}
 
最終更新:2017年08月24日 15:02