アットウィキロゴ

rank bopnn

package ken;
 
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
 
 
public class pro {
 
     int s,datanumber;
    String[] data=new String[3600];
    String tt;
    String[] name=new String[3600];
     String[] dic=new String[3600];
       int[] point=new int[3600];
     int delta;
         int[] rank=new int[3600];
 
    public static void main(String[] args) {
        pro te=new pro();
    }
 
    pro(){
 
 
 
        readx("bomb.csv");        
 
 
 
 
 
for(s=2;s<datanumber+1;s++){
String[] x=data[s].split(",");
name[s]=x[2];   
}
 
delta=0;
int sx;     
 
 for(s=2;s<datanumber+1;s++){
     int h=0;
 for(sx=0;sx<delta+1;sx++){
 if(name[s].equals(dic[sx]))h=100;
 }    
  if(h<60)delta=delta+1;
  if(h<60)dic[delta]=name[s];
 }
 
 
  for(s=2;s<datanumber+1;s++){
     int h=0;
 for(sx=1;sx<delta+1;sx++){
 if(name[s].equals(dic[sx]))h=sx;
 }    
 point[h]=point[h]+1;
 }
 
 
 ranking(); 
 
 for(s=1;s<delta+1;s++){
   sx=rank[s];
   System.out.println(dic[sx]+","+point[sx]);
 }
 
 
 
    }
 
     void ranking(){ 
 
int r,s,sx,h; 
int[] ch=new int[8000];
double maxu;
 
    for (r = 1; r < delta + 1; r++) {
        sx = 0;
        maxu = -999999;
        for (s = 1; s < delta + 1; s++) {
            h = 0;
            if (point[s] > maxu) h = h + 1;
            if (ch[s] < 50) h = h + 1;
            if (h == 2) maxu = point[s];
            if (h == 2) sx = s;
        }
        rank[r] = sx;
        ch[sx] = 100;
    }
 
 
}
 
 
 
    void readx(String file){
 
String str;
BufferedReader br;  
int s;
s=0;
try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"UTF-8"));  
while((str = br.readLine()) != null) {  
s=s+1;
data[s]=str;  
}
br.close();
} catch (IOException e) {System.out.println(e);}  
 
datanumber=s;
 
} 
 
 
 
}
 
最終更新:2016年08月15日 11:29