Rezolvare completă PbInfo #1767 multiple

Sergiu, fiind un elev talentat în ceea ce priveşte informatica, doreşte pe cât posibil să-şi ajute prietenii în rezolvarea problemelor. Prietenii lui au venit la el, fiind foarte confuzi în legătură cu o anumită problemă: Ei au un set de T întrebări de forma: Care este cel mai mic număr strict mai mare decât n, divizibil cu k?
Fiind ocupat cu pregătirea pentru OJI, el vă roagă pe voi să-l ajutaţi!

Cerința

Pentru fiecare din cele T întrebări, să se afle cel mai mic număr strict mai mare decât n care este divizibil cu k.

Date de intrare

Fișierul de intrare multiple.in conține pe prima linie numărul T, iar următoarele T linii conţin câte două numere, n şi k, cu semnificaţia din enunţ.

Date de ieșire

Fișierul de ieșire multiple.out va conține pe T linii, pentru fiecare întrebare, numărul cerut.

Restricții și precizări

  • 1 ≤ T ≤ 10000
  • se recomandă utilizarea tipurilor de date pe 8 octeţi (64 de biţi)
  • dacă reuşiţi să-l ajutaţi pe Sergiu, pe lângă cele 100 de puncte, probabil el vă va face cinste şi cu o sticlă de apă minerală

Exemplu

multiple.in

5
1 2
3 7
24 9
13 223
45 9

multiple.out

2
7
27
223
54

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema multiple:

/* * Razvan Zoltan @ multiple
   * solutie oficiala
   * query constant - O(1) pe query
*/

#include <fstream>

using namespace std;

ifstream fin("multiple.in");
ofstream fout("multiple.out");

int main()
{
    int t, n, k;
    fin >> t;
    while (t) {
        --t;
        fin >> n >> k;
        fout << n + k - n % k << '\n';
    }
    return 0;
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #1767 multiple

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1767 multiple de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!