👤

Pentru numerotarea paginilor unei serii enciclopedice, formate din unul sau mai multe volume, se
presupune că se folosesc n cifre. Fiecare volum are 300 de pagini, cu excepŃia eventuală a celui din urmă
care ar putea avea mai puŃine. Numerotarea paginilor începe cu 1 în fiecare volum. Se citeşte de la
tastatură n, numărul de cifre (1 text pag.txt, pe linii distincte, numărul de volume din serie şi numărul de pagini ale ultimului volum.
Dacă nu este posibil se va scrie mesajul IMPOSIBIL.
Exemplu
tastatură: 999 pag.txt: 2 105
tastatură: 900 pag.txt: IMPOSIBIL


Răspuns :

#include<iostream>
using namespace std;

int n, c;

int main()
{
    cin >> n;
    c = n % 792;
    if (c == 0) {cout << n / 792 << ' ' << c << '\n'; return 0; }
    if(c <= 9) { cout << n / 792 + 1 << ' ' << c << '\n'; return 0; }
    else
    {
        c -= 9;
        if(c <= 180)
            if(c % 2) cout << "IMPOSIBIL\n";
            else { cout << n / 792 + 1 << ' ' << 9 + c / 2  << '\n'; return 0; }
        else
        {
            c -= 180;
            if(c % 3) cout << "IMPOSIBIL\n";
            else { cout << n / 792 + 1 << ' ' << 9 + 90 + c / 3  << '\n'; return 0; }
        }
    }
}