アットウィキロゴ

manonobj

package m7;
 
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
 
 
public class pro {
 
  int s,datanumber,dicnumber;
    String[] data=new String[50000];
      String[] dic=new String[50000];
    String[] name=new String[50000];
    int[] age=new int[50000];
     int[] point=new int[50000];
      int[][] v=new int[5000][100];
     int[] a=new int[50000];
       int[] rank=new int[50000];
 
    public static void main(String[] args) {
        pro te=new pro();
    }
 
    pro(){
 
    readx("m7.txt");
 
 for(s=1;s<datanumber+1;s++){    
 String[] x=data[s].split(",");
 name[s]=x[0];
 age[s]=numx(x[1]);
 point[s]=numx(x[2]);
 }
 
 int sx;
       dic[0]="";
 for(s=1;s<datanumber+1;s++){
     int h=0;
 for(sx=1;sx<dicnumber+1;sx++){
 if(name[s].equals(dic[sx]))h=100;
 }    
 if(h<60)dicnumber=dicnumber+1;
 if(h<60)dic[dicnumber]=name[s];
 if(h<60)a[dicnumber]=age[s];
 }  
 
 
 for(s=1;s<datanumber+1;s++){
     int sxs=0;
 for(sx=1;sx<dicnumber+1;sx++){
 if(name[s].equals(dic[sx]))sxs=sx;
 }    
 int a1=point[s];
 System.out.println(name[s]+","+a1);
 v[sxs][a1]=100;
 }
 
 ranking();
 
System.out.println("<table>"); 
System.out.print("<tr>"); 
System.out.print("<th>名前</th>");
System.out.print("<td>生年</td>");
for(sx=10;sx<60;sx++){
System.out.print("<td>"+sx+"歳</td>");
}
System.out.println("</tr>");
 
for(s=1;s<dicnumber+1;s++){
 sx=rank[s];  
System.out.print("<tr>"); 
System.out.print("<th>"+dic[sx]+"</th>");
System.out.print("<td>"+a[sx]+"</td>");
for(int tx=10;tx<60;tx++){
if(v[sx][tx]>50)System.out.print("<td>○</td>");
if(v[sx][tx]<50)System.out.print("<td>×</td>");
}
System.out.println("</tr>");
 }
System.out.println("</table>"); 
 
 
 
 }
      void ranking(){ 
int r,s,sx,h; 
int[] ch=new int[2001];
double maxu;
 
for(r=1;r<dicnumber+1;r++){ 
sx=0; 
maxu=-999999; 
for(s=1;s<dicnumber+1;s++){ 
h=0; 
if(a[s]>maxu)h=h+1; 
if(ch[s]<50)h=h+1; 
if(h==2)maxu=a[s]; 
if(h==2)sx=s; 
}
rank[r]=sx; 
ch[sx]=100; 
}
 
 
}
 
 
    int numx(String str){
 
    int nx;
 
    nx=0;
 
 try{
 
    nx=Integer.parseInt(str);
 
 }catch (Exception e) {}
 
 return nx;
 
 
 
}
 
    void readx(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;
 
} 
 
 
}
 
最終更新:2016年08月24日 11:08