Recursivitate Reciprocă

Time limit: 0.02s
Memory limit: 4MB
Input:
Output:

Ștefan, după ce a citit cartea Gödel, Escher, Bach: an Eternal Golden Braid de Douglas Hofstadter, și-a dorit să implementeze șirurile „Figure-Figure”, ca o provocare.

Cele două șiruri sunt definite așa:
R(1)=1; S(1)=2R(1) = 1;\ S(1) = 2
R(n)=R(n1)+S(n1)R(n) = R(n-1) + S(n-1)

Șirul S(n)S(n) este șirul de numere naturale strict crescătoare care nu apar în R(n)R(n). Cele două șiruri sunt complementare.

Cerință

Întrucât ultima oară când a scris un program cu recursivitate mutuală a avut greșeli, de data asta a încercat să adapteze un cod de pe wiki-ul Rosetta Code. Totuși, ceva nu a mers conform planului...

Aici (sau în secțiunea „Atașamente” din lateral) puteți găsi programul scris de Ștefan. Sarcina voastră este să îl faceți să meargă corespunzător.

Date de intrare

Se va citi din terminal nn, un număr natural mai mic sau egal cu 1 0001\ 000.

Date de ieșire

Se va afișa în terminal pe 2 linii șirul R(n)R(n), respectiv S(n)S(n), respectând formatul descris în exemplul de mai jos.

Exemplu

stdin

20

stdout

R(20): 1 3 7 12 18 26 35 45 56 69 83 98 114 131 150 170 191 213 236 260
S(20): 2 4 5 6 8 9 10 11 13 14 15 16 17 19 20 21 22 23 24 25

Problem info

ID: 561

Editor: ezluci

Author:

Source: AcadNet 2023, etapa județeană, XI-XII

Tags:

AcadNet 2023, etapa județeană, XI-XII

Attachments

Log in or sign up to be able to send submissions!