11922 - Permutation Transformer
Posted: Mon Feb 07, 2011 5:45 am
I'm making this problem for educational purpose. So here are the 2 methods used by me (method 1) and Derek Kisman (method2). Method 1 is theoretically faster, but given the limitations of the problem, both programs run very fast. He hints are encoded by rot13, so you won't be able to see them "accidentally" 
Method 1 (code length: 2.29k):
Hfr n fcynl gerr. Urer gur abqr jrvtug pbeerfcbaqf gb gur cbfvgvba bs rnpu ahzore. Znvagnva gur ahzore bs abqrf va rnpu fhogerr, gura lbh pna ebgngr gur x-gu ryrzrag gb gur ebbg (pnyy vg fcynl-xgu). Lbh nyfb arrq gb znvagnva jurgure be abg rnpu fhogerr vf erirefrq.
Gvzr pbzcyrkvgl: B(z*ybta)
Method 2 (code length: 1.87k):
Qvivqr gur neenl vagb Q=fdeg(a) fhoneenlf, gura rnpu bcrengvba vaibyirf fbzr jubyr fhoneenlf, nf jryy nf vaqvivqhny ryrzragf va ng zbfg gjb fhoneenlf (urnq/gnvy)
Gvzr pbzcyrkvgl: B(z*fdeg(a))

Method 1 (code length: 2.29k):
Hfr n fcynl gerr. Urer gur abqr jrvtug pbeerfcbaqf gb gur cbfvgvba bs rnpu ahzore. Znvagnva gur ahzore bs abqrf va rnpu fhogerr, gura lbh pna ebgngr gur x-gu ryrzrag gb gur ebbg (pnyy vg fcynl-xgu). Lbh nyfb arrq gb znvagnva jurgure be abg rnpu fhogerr vf erirefrq.
Gvzr pbzcyrkvgl: B(z*ybta)
Method 2 (code length: 1.87k):
Qvivqr gur neenl vagb Q=fdeg(a) fhoneenlf, gura rnpu bcrengvba vaibyirf fbzr jubyr fhoneenlf, nf jryy nf vaqvivqhny ryrzragf va ng zbfg gjb fhoneenlf (urnq/gnvy)
Gvzr pbzcyrkvgl: B(z*fdeg(a))