Rev 13587 | Rev 17173 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 13587 | Rev 14860 | ||
---|---|---|---|
Line 23... | Line 23... | ||
23 | 23 | ||
24 | slib_text=!declosing $slib_text |
24 | slib_text=!declosing $slib_text |
25 | !if [ isin $slib_s |
25 | !if [ isin $slib_s |
26 | slib_G=!declosing $slib_s |
26 | slib_G=!declosing $slib_s |
27 | !else |
27 | !else |
28 | - | ||
29 | slib_liste= |
28 | slib_liste= |
30 | !for slib_i = 1 to $slib_n |
29 | !for slib_i = 1 to $slib_n |
31 | slib_liste1=!values 1 for x=1 to $slib_s |
30 | slib_liste1=!values 1 for x=1 to $slib_s |
32 | slib_liste0=!values 0 for x=1 to $[$slib_n-$slib_i-$slib_s] |
31 | slib_liste0=!values 0 for x=1 to $[$slib_n-$slib_i-$slib_s] |
33 | slib_liste2=!shuffle $slib_liste1,$slib_liste0 |
32 | slib_liste2=!shuffle $slib_liste1,$slib_liste0 |
34 | slib_liste2=1,$slib_liste2 |
33 | slib_liste2=1,$slib_liste2 |
35 | slib_liste2=!item 1 to $[$slib_n-$slib_i+1] of $slib_liste2 |
34 | slib_liste2=!item 1 to $[$slib_n-$slib_i+1] of $slib_liste2 |
36 | slib_liste=!append item $slib_liste2 to $slib_liste |
35 | slib_liste=!append item $slib_liste2 to $slib_liste |
37 | !next slib_i |
36 | !next slib_i |
38 | slib_liste=!nonempty items $slib_liste |
37 | slib_liste=!nonempty items $slib_liste |
39 | slib_G= !exec pari slib_n =$slib_n;slib_liste =[$slib_liste];slib_M=matrix(slib_n,slib_n,slib_i,slib_j, if(slib_i < slib_j,slib_liste[slib_n*(slib_n-1)/2-(slib_n-slib_i+1)*(slib_n-slib_i)/2 +slib_j-slib_i]));for(slib_i = 2,slib_n-1,if(slib_M[,slib_i]==0,slib_M[1,slib_i]=1);if(slib_M[slib_i,]==0,slib_M[slib_i,slib_n]=1));slib_M[1,slib_n]=0; slib_M |
38 | slib_G= !exec pari slib_n =$slib_n;slib_liste =[$slib_liste];slib_M=matrix(slib_n,slib_n,slib_i,slib_j, if(slib_i < slib_j,slib_liste[slib_n*(slib_n-1)/2-(slib_n-slib_i+1)*(slib_n-slib_i)/2 +slib_j-slib_i]));for(slib_i = 2,slib_n-1,if(slib_M[,slib_i]==0,slib_M[1,slib_i]=1);if(slib_M[slib_i,]==0,slib_M[slib_i,slib_n]=1));slib_M[1,slib_n]=0; slib_M |
40 | 39 | ||
41 | !endif |
40 | !endif |
42 | slib_GG=!translate internal ; to $\ |
41 | slib_GG=!translate internal ; to $\ |
43 | $ in $slib_G |
42 | $ in $slib_G |
44 | - | ||
45 | 43 | ||
46 | ########################## |
44 | ########################## |
47 | slib_niveau=!exec pari slib_n=$slib_n;slib_M=Mat([$slib_G]);slib_niveau=matrix(slib_n,slib_n);slib_niveau[1,1]=1;slib_degp=vector(slib_n,i,sum(x=1,slib_n,slib_M[x,i]));for(slib_k=1,slib_n-1,for(slib_i=1,slib_n,if(slib_niveau[slib_k,slib_i]!=0,for(slib_j=1,slib_n,if(slib_M[slib_i,slib_j]!=0,slib_degp[slib_j]-=1;if(slib_degp[slib_j]==0,slib_niveau[slib_k+1,slib_j]=1));););););slib_niveau |
45 | slib_niveau=!exec pari slib_n=$slib_n;slib_M=Mat([$slib_G]);slib_niveau=matrix(slib_n,slib_n);slib_niveau[1,1]=1;slib_degp=vector(slib_n,i,sum(x=1,slib_n,slib_M[x,i]));for(slib_k=1,slib_n-1,for(slib_i=1,slib_n,if(slib_niveau[slib_k,slib_i]!=0,for(slib_j=1,slib_n,if(slib_M[slib_i,slib_j]!=0,slib_degp[slib_j]-=1;if(slib_degp[slib_j]==0,slib_niveau[slib_k+1,slib_j]=1));););););slib_niveau |
48 | slib_height=!exec pari slib_n=$slib_n;slib_niveau=Mat([$slib_niveau]);slib_k=slib_n;for(slib_i=1,slib_n,if(slib_niveau[slib_i,]==0,slib_k=slib_i-1;break));print(slib_k); |
46 | slib_height=!exec pari slib_n=$slib_n;slib_niveau=Mat([$slib_niveau]);slib_k=slib_n;for(slib_i=1,slib_n,if(slib_niveau[slib_i,]==0,slib_k=slib_i-1;break));print(slib_k); |
49 | 47 |