Aluksi listan sisältö on [1,2,3,...,n]. Joka askeleella otat listan kaksi ensimmäistä alkiota ja siirrät ne listan loppuun käänteisessä järjestyksessä. Monenko askeleen jälkeen listan alkuperäinen järjestys on palautunut?
Tehtäväsi on suunnitella tehokas algoritmi, jota voidaan käyttää hyvin suurilla n:n arvoilla. Algoritmin aikavaativuuden tulee olla O(1).
Toteuta tiedostoon fullround.py
funktio count
seuraavan mallin mukaisesti:
def count(n): # TODO if __name__ == "__main__": print(count(2)) # 2 print(count(5)) # 6 print(count(31)) # 240 print(count(1234567)) # 381038919372