Cerința
Se dau dau două vase cu capacitatea A, respectiv B litri, iniţial goale. Se cere să se măsoare cu ajutorul lor C litri de apă, având la dispoziţie următoarele operaţii:
- umplerea completă a unui vas (de la robinet). Operaţia se notează
R X, undeXpoate fiAsauB. - golirea completă a unui vas (în chiuvetă). Operaţia se notează
X C, undeXpoate fiAsauB. - mutarea dintr-un vas în celălalt. Mutarea din vasul
Xîn vasulYse încheie când se goleşte vasulXsau când se umple vasulY. Operaţia se noteazăX Y, undeXşiYsunt diferite şi pot fiAsauB.
Să se determine o secvenţă de operaţii în urma cărora unul dintre vase să conţină C litri de apă.
Date de intrare
Programul citește de la tastatură numerele A B C.
Date de ieșire
Programul va afișa pe ecran numărul minim de operaţii n, apoi cele n operaţii, fiecare pe o linie. Operaţiile pot fi: R A, R B, A C, B C, A B, B A, cu semnificaţia de mai sus.
Restricții și precizări
1 ≤ A , B , C ≤ 1000- se garantează că pentru toate datele de test există soluţie
Exemplu:
Intrare
5 8 2
Ieșire
4 R A A B R A A B
Explicaţie
Vasul A are capacitatea de 5 litri, iar vasul B are capacitatea de 8 litri. Se cere să se măsoare 2 litri de apă.
Cele 4 operaţii sunt:
R A– se umple vasulA.Aconţine5litri,Bconţine0litriA B– se mută apă din vasulAînB. Se va muta toată apa dinA.Aconţine0litri,Bconţine5litriR A– se umple vasulA.Aconţine5litri,Bconţine5litriA B– se mută apă din vasulAînB. Se vor muta3litri de apă dinA.Aconţine2litri,Bconţine8litri- vasul
Aconţine2litri