Ciparu virkni, kas sastāv tikai no nullēm un vieniniekiem, veido pa soļiem sekojoši.
Sākumā (0-tajā solī) virkne sastāv no viena vieninieka: "1".
Katrā nākošajā solī virkni veido no iepriekšējā solī iegūtās virknes, katru nulli tajā aizvietojot ar "000", bet katru vieninieku - ar "101".
Pirmajā solī tiks izveidota virkne "101", otrajā solī - "101000101", trešajā - "101000101000000000101000101", utt.
Uzrakstiet programmu, kas nosaka, kurā N-tajā solī izveidotās virknes pozīcijā pēc kārtas (pozīciju numerācija sākas no virknes kreisā gala ar 1) atrodas K-tais vieninieks!
Piezīme. Uzdevums nosaukts par godu Georgam Ferdinandam Ludvigam Filipam Kantoram (1845-1918), un uzdevuma ideja ir radusies no Kantora kopām.
Teksta faila kantors.dat pirmajā rindā dots vesels nenegatīvs skaitlis N (0 ≤ N ≤ 500), otrajā rindā - naturāls skaitlis K. Ir zināms, ka N-tajā solī izveidotajā virknē vieninieku skaits ir vismaz K.
Teksta faila kantors.rez vienīgajā rindā jāizvada naturāls skaitlis - pozīcija virknē, kurā atrodas K-tais vieninieks.
kantors.dat | kantors.rez |
2 3 |
7 |
kantors.dat | kantors.rez |
3 6 |
21 |
kantors.dat | kantors.rez |
45 10000000000 |
11580743424275073 |