Simulare - ONI 2018 VII | nxy

This was the problem page during the contest. Access the current page here.
Time limit: 0.05s Memory limit: 8MB Input: nxy.in Output: nxy.out

Se consideră NN, un număr natural nenul. Dorim să-l scriem pe NN ca sumă a două numere naturale nenule xx și yy, astfel încât suma cifrelor numerelor xx și yy să fie maximă.

Cerință

Scrieţi un program care să rezolve următoarele cerinţe:

  1. să determine suma maximă a cifrelor a două numere xx și yy cu proprietatea că x+y=Nx+y=N;
  2. să determine două numere naturale nenule xmaxxmax și ymaxymax cu proprietatea că xmaxymaxxmax \geq ymax, xmax+ymax=Nxmax+ymax=N, suma cifrelor lor este maximă, iar diferența xmaxymaxxmax-ymax este maximă;
  3. să determine două numere naturale nenule xminxmin și yminymin cu proprietatea că xminyminxmin \geq ymin, xmin+ymin=Nxmin+ymin=N, suma cifrelor lor este maximă, iar diferența xminyminxmin-ymin este minimă.

Date de intrare

Fişierul de intrare nxy.in conține pe prima linie numărul natural cc, reprezentând cerința (11, 22 sau 33). Pe a doua linie se află numărul natural NN.

Date de ieșire

Fişierul de ieșire nxy.out va conține o singură linie. Dacă c=1c=1, pe prima linie va fi scris un număr natural ss, reprezentând suma maximă a cifrelor a două numere naturale nenule xx și yy pentru care x+y=Nx+y=N.
Dacă c=2c=2 sau c=3c=3, pe prima linie vor fi scrise două numere naturale nenule separate printr-un singur spațiu, reprezentând soluţia pentru cerința respectivă (xmaxxmax și ymaxymax pentru c=2c=2, respectiv xminxmin și yminymin pentru c=3c=3).

Restricții și precizări

  • 1<N10181 \lt N \leq 10^{18}
  • Pentru teste valorând 20% din punctaj cerința este 1. Pentru teste valorând 40% din punctaj cerința este 2. Pentru teste valorând 40% punctaj cerința este 3.

Exemplul 1

nxy.in

1 
25

nxy.out

16

Explicație

Suma maximă care se poate obţine adunând cifrele a două numere xx și yy pentru care x+y=25x+y=25 este 1616.

Exemplul 2

nxy.in

2
25

nxy.out

19 6

Explicație

Suma maximă care se poate obține adunând cifrele a două numere xx și yy pentru care x+y=25x+y=25 este 1616. Perechea de numere xmaxymaxxmax \geq ymax pentru care xmaxymaxxmax-ymax este maximă (1313) și pentru care suma cifrelor este maximă este xmax=19xmax=19 și ymax=6ymax=6.

Exemplul 3

nxy.in

3
25

nxy.out

16 9

Explicație

Suma maximă care se poate obține adunând cifrele a două numere xx și yy pentru care x+y=25x+y=25 este 1616. Perechea de numere xmin≥ymin pentru care xminyminxmin-ymin este minimă (77) și pentru care suma cifrelor este maximă este xmin=16xmin=16 și ymin=9ymin=9.

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