fbpx

Problema #970 – Gen – Rezolvari PBInfo

de Mihai-Alexandru

Pe planeta Marte, marţienii folosesc în calculele aritmetice doar cifrele 0, 1, 2 şi 3. Ei au inventat un nou sistem binar de numeraţie. Pornind de la numărul 23, ei generează numere binare speciale aplicând de un număr finit de ori regulile din tabelul de mai jos:

  1. Cifra 2 se poate înlocui cu succesiunea: 12
  2. Cifra 3 se poate înlocui cu succesiunea: 03
  3. Cifra 2 se poate înlocui cu succesiunea: 01
  4. Cifra 3 se poate înlocui cu succesiunea: 10

Marţienii au început să genereze un astfel de număr, aplicând succesiv (în această ordine): de n ori regula 1); de k ori regula 2); o singură dată regula 3) şi o singură dată regula 4). Nefiind atenţi, ei nu au reuşit să ducă la capăt generarea şi au nevoie de ajutor. Ajutaţi-i să genereze numărul binar dorit.

Cerinţa

Scrieţi un program care citeşte numerele naturale nenule n şi k şi care afişează numărul binar obţinut în urma aplicării succesive a regulilor cerute de marţieni.

Date de intrare

Programul citește de la tastatură numerele n k.

Date de ieșire

Programul va afișa pe ecran numărul cerut.

Restricții și precizări

  • 0<n,k<=1000000, numere naturale

Exemplu

Intrare

5 4

Ieșire

1111101000010
#include <bits/stdc++.h>
using namespace std;
int main()
{
    long long n,k,i=1,j=1;
    cin>>n>>k;
    while(i<=n)
    {
        i++;
        cout<<"1";
    }
    cout<<"01";
    while(j<=k)
    {
        j++;
        cout<<"0";
    }
    cout<<"10";
    return 0;
}
Comentarii

S-ar putea sa iti placa