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