package c2;
public class pro {
int[] y=new int[100];
int[] d=new int[100];
double[] tab=new double[101];
int[] sample_d=new int[200];
int[] sample_y=new int[200];
double[] avg=new double[22];
int op;
public static void main(String[] args) {
pro t=new pro();
}
pro(){
y[ 1 ]= 1249 ;
y[ 2 ]= 306 ;
y[ 3 ]= 305 ;
y[ 4 ]= 280 ;
y[ 5 ]= 244 ;
y[ 6 ]= 223 ;
y[ 7 ]= 221 ;
y[ 8 ]= 212 ;
y[ 9 ]= 190 ;
y[ 10 ]= 189 ;
y[ 11 ]= 148 ;
y[ 12 ]= 138 ;
y[ 13 ]= 152 ;
y[ 14 ]= 133 ;
y[ 15 ]= 122 ;
y[ 16 ]= 107 ;
y[ 17 ]= 112 ;
y[ 18 ]= 93 ;
y[ 19 ]= 80 ;
y[ 20 ]= 64 ;
y[ 21 ]= 453 ;
d[ 1 ]= 424 ;
d[ 2 ]= 390 ;
d[ 3 ]= 355 ;
d[ 4 ]= 325 ;
d[ 5 ]= 259 ;
d[ 6 ]= 247 ;
d[ 7 ]= 237 ;
d[ 8 ]= 190 ;
d[ 9 ]= 174 ;
d[ 10 ]= 140 ;
d[ 11 ]= 131 ;
d[ 12 ]= 112 ;
d[ 13 ]= 95 ;
d[ 14 ]= 72 ;
d[ 15 ]= 73 ;
d[ 16 ]= 397 ;
d[ 17 ]= 112 ;
d[ 18 ]= 93 ;
d[ 19 ]= 80 ;
d[ 20 ]= 64 ;
d[ 21 ]= 453 ;
tab[ 1 ]= 274.8 ;
tab[ 2 ]= 252.0 ;
tab[ 3 ]= 259.0 ;
tab[ 4 ]= 288.3 ;
tab[ 5 ]= 336.4 ;
tab[ 6 ]= 369.8 ;
tab[ 7 ]= 385.3 ;
tab[ 8 ]= 411.4 ;
tab[ 9 ]= 442.6 ;
tab[ 10 ]= 519.3 ;
tab[ 11 ]= 532.2 ;
tab[ 12 ]= 592.6 ;
tab[ 13 ]= 611.1 ;
tab[ 14 ]= 642.3 ;
tab[ 15 ]= 679.9 ;
tab[ 16 ]= 746.5 ;
tab[ 17 ]= 785.3 ;
tab[ 18 ]= 794.2 ;
tab[ 19 ]= 818.1 ;
tab[ 20 ]= 876.3 ;
tab[ 21 ]= 1227.5 ;
yy();
dd();
int tr;
for(tr=1;tr<2000;tr++){
int n=(int)(100*Math.random())+1;
change sub=new change();
sub.tab=tab;
sub.sample_y=sample_y;
sub.sample_d=sample_d;
sub.makedata(n);
op=sub.op;
int k1=sample_d[n];
int k2=sample_d[op];
sample_d[n]=k2;
sample_d[op]=k1;
}
int s;
for(s=1;s<101;s++){
System.out.println(sample_y[s]+","+sample_d[s]);
}
}
double sigx(){
int s,sx;
int m1;
double m2;
for(s=1;s<22;s++){
m1=0;
m2=0;
for(sx=1;sx<101;sx++){
if(sample_y[sx]==s)m1=m1+1;
if(sample_y[sx]==s)m2=m2+50*sample_d[sx]-25;
}
avg[s]=m2/m1;
}
double ss=0;
ss=0;
for(s=1;s<22;s++){
ss=ss+sample_y[s]*(avg[s]-tab[s])*(avg[s]-tab[s]);
}
return ss;
}
void yy(){
int s,y1;
int[] cc=new int[50];
cc[0]=0;
for(s=1;s<22;s++){
cc[s]=cc[s-1]+y[s];
}
double de=(double)cc[21]/100;
int sx=0;
for(sx=1;sx<100;sx++){
double pp=sx*de;
sample_y[sx]=1;
for(s=1;s<22;s++){
if(cc[s]<pp)sample_y[sx]=s+1;
}
}
}
void dd(){
int s,y1;
int[] cc=new int[50];
cc[0]=0;
for(s=1;s<22;s++){
cc[s]=cc[s-1]+d[s];
}
double de=(double)cc[21]/100;
int sx=0;
for(sx=1;sx<100;sx++){
double pp=sx*de;
sample_d[sx]=1;
for(s=1;s<22;s++){
if(cc[s]<pp)sample_d[sx]=s+1;
}
}
}
}
最終更新:2015年10月01日 07:40