N elemanlarının permütasyonları ile 0 ila n! -1 sayıları arasında, permütasyonların ve ilgili sayıların sözlükbilimsel sıralaması aynı olacak şekilde iyi bilinen bir bijeksiyon vardır. Örneğin, n = 3 ile:
0 <-> (0, 1, 2)
1 <-> (0, 2, 1)
2 <-> (1, 0, 2)
3 <-> (1, 2, 0)
4 <-> (2, 0, 1)
5 <-> (2, 1, 0)
Ayrıca, n elementinin permütasyonlarının bir grup (n simetrik sıra n!) Grubu oluşturduğu iyi bilinmektedir - bu nedenle, özellikle, n elementin ikinci permütasyonuna uygulanan n elementin bir permütasyonunun n elementin permütasyonu sağladığı bilinmektedir. .
Örneğin, (a, b, c) 'ye uygulanan (1, 0, 2) verim (b, a, c)' yi verir, dolayısıyla (2, 1, 0) verimine (1, 2) uygulanan (1, 0, 2) , 0).
Üç tamsayı argümanı alan bir program yazın: n, p1 ve p2; p1 ve p2'yi n elementinin permütasyonu olarak yorumlar; birincisini ikinciye uygular; ve karşılık gelen tamsayıyı çıkarır. Örneğin:
$ ./perm.sh 3 2 5
3
A.
Dün belgelere bir göz attım , ancak O :-)