package b;
public class pro {
int[] x=new int[11];
int s;
double[] point=new double[101];
int[] sample=new int[101];
int[][] count=new int[101][11];
public static void main(String[] args) {
pro t=new pro();
}
pro(){
for(s=1;s<11;s++){
x[s]=s;
}
int tr;
for(tr=1;tr<101;tr++){
for(s=1;s<101;s++){
sample[s]=rnd();
}
for(s=1;s<11;s++){
count[tr][s]=0;
}
for(s=1;s<101;s++){
int sx=sample[s];
count[tr][sx]=count[tr][sx]+1;
}
}
int delta;
for(delta=1;delta<11;delta++){
for(tr=1;tr<101;tr++){
double m=1;
for(s=1;s<11;s++){
double n=count[tr][s];
if(n<1)n=0.01;
m=m*n;
}
point[tr]=m;
}
double p1=0;
for(tr=1;tr<101;tr++){
p1=p1+point[tr];
}
for(tr=1;tr<101;tr++){
point[tr]=point[tr]/p1;
}
for(tr=1;tr<101;tr++){
if(point[tr]<0.0001){
for(s=1;s<11;s++){
sample[s]=rnd();
}
for(s=1;s<11;s++){
count[tr][s]=0;
}
for(s=1;s<101;s++){
int sx=sample[s];
count[tr][sx]=count[tr][sx]+1;
}
}
}
}
for(s=1;s<11;s++){
System.out.println(count[1][s]);
}
}
int rnd(){
double n1=10*Math.random();
int n2=(int)(n1)+1;
return x[n2];
}
}
最終更新:2016年11月28日 13:29