var oks = [];
const N = 10;
const nbZeros = 3;
var denum = 0;
for(var i = 0; i<Math.pow(2,N);++i){
var bin = i.toString(2).padStart(N, '0');
var arr = bin.split('');
if(valid(arr)){
oks.push(arr);
}
if(arr.filter(x=>x==0).length==nbZeros){denum++}
}
rep = dispatch(oks);
console.log(oks)
console.log(rep);
console.log('p = ', `${oks.length} '/' ${denum} == ${oks.length/denum}`);
function dispatch(arr){
dic = {};
arr.forEach(v=>{
x = v.join('').replace(/0+$/, '');
var l = v.length - x.length;
dic[l] = dic[l] || 0;
dic[l]++;
})
return dic;
}
function valid(arr){
var a = 0;
var b = 0;
for(var i = 0; i < arr.length; ++i){
if(arr[i] == 1){
a++;
}else{
b++;
}
if(a < b){
return false;
}
}
if(b != nbZeros){
return false;
}
return true;
}
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 44 invités
Tu pars déja ?
Identification
Pas encore inscrit ?
Ou identifiez-vous :