Informatică, întrebare adresată de FelicityForEver, 8 ani în urmă

Cerința
Toffeeman vrea să împartă c caramele la p prichindei astfel încât primul să ia k caramele, al doilea k+1 caramele, al treilea k+2 caramele, şi aşa mai departe. De asemenea, Toffeeman vrea să rămână cu cât mai puţine caramele. Aflaţi cu câte caramele rămâne Toffeeman.

Date de intrare
Programul citește de la tastatură numerele c şi p.

Date de ieșire
Programul va afișa pe ecran numărul caramelelor rămase.

Restricții și precizări
1 ≤ c ≤ 1018
1 ≤ p ≤ 109
1 ≤ k ≤ cExemplu
Intrare

23 5
Ieșire

3
Explicație
Cei 5 prichindei au primit 2,3,4,5 respectiv 6 caramele, în total 20 caramele. Au rămas 3 caramele.

Răspunsuri la întrebare

Răspuns de Blackspell13
2

Răspuns:

#include <iostream>

int main()

{

unsigned long long c, p, x;

std::cin >> c >> p;

x = (c - (p - 1) * p / 2) / p;

std::cout << c - x * p - (p - 1) * p / 2;

return 0;

}

Explicație:

Am luat 94. Probabil mai sunt cateva cazuri speciale pe care nu le pot gasi. Poate le gasesti tu. Succes

Alte întrebări interesante