アットウィキロゴ

799vv

import java.io.*;

class rank{

int[] rank=new int[50000];
int[][] num=new int[500][10000];
int[] snum=new int[10000];

String[] data=new String[50000];
int s,sx,sxs,datanumber,dicnumber,wordnumber;
String[] dic=new String[50000];
int s1;

public static void main(String args[]){
rank test=new rank();
}

rank(){

readfile("dic.txt");

for(s=1;s<datanumber+1;s++){
String[] x=data[s].split(",");
if(x.length>1)dic[s]=x[1];
}

dicnumber=datanumber;

readfile("svm.txt");

System.out.println(datanumber);

for(s=1;s<datanumber+1;s++){
String[] y=data[s].split(",");
wordnumber=y.length;
for(sx=0;sx<y.length;sx++){
num[s][sx+1]=Integer.parseInt(y[sx]);
}
}


for(sx=1;sx<wordnumber+1;sx++){
s1=0;
for(s=1;s<datanumber+1;s++){
s1=s1+num[s][sx];
}
snum[sx]=s1;
}

System.out.println(dicnumber);

makerank();

for(s=300;s<500;s++){
sx=rank[s];
System.out.print(dic[sx]);
System.out.println(sx);

}


}

void makerank(){
int h,sx,sxs,maxn;
int[] ch=new int[10000];
int r;

for(r=1;r<1000;r++){
sxs=0;
maxn=0;
for(sx=1;sx<wordnumber+1;sx++){
h=0;
if(snum[sx]>maxn)h=h+1;
if(ch[sx]<1)h=h+1;
if(h==2)maxn=snum[sx];
if(h==2)sxs=sx;
}
ch[sxs]=r;
rank[r]=sxs;
}

}



void readfile(String file){

String str;
BufferedReader br;
int s;
s=0;

try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"SJIS"));  
while((str = br.readLine()) != null) {  
s=s+1;
data[s]=str;  
}
br.close();
} catch (IOException e) {System.out.println(e);}
datanumber=s;

}






}
最終更新:2011年06月04日 19:54