fbpx

Problema #382 – AproapeK – Rezolvari PBInfo

de Mihai-Alexandru

Cerinţa

Se dau două numere naturale nenule n și k. Să se determine multiplul lui k cel mai apropiat de n.

Date de intrare

Programul citește de la tastatură numerele n și k, în această ordine.

Date de ieşire

Programul afișează pe ecran numărul p, reprezentând multiplul lui k cel mai apropiat de n.

Restricţii şi precizări

  • 1 ≤ k ≤ n ≤ 1.000.000
  • dacă există mai mulți multipli ai lui k la fel de apropiați de n, se va afișa cel mai mic.

Exemplu

Intrare

18 5

Ieșire

20
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n,k;
    int p;
    cin >> k >> n;
    p = k / n;
    if (k-p*n > n*(p+1)-k)
        cout << n*(p+1);
    else
        cout << p*n;
    return 0;
}
Comentarii

S-ar putea sa iti placa