Остатки Даны целые неотрицательные числа a , b , c , d , при этом 0⩽c<d . Выведите в порядке возрастания все числа от a до b , которые дают остаток c при делении на d .
В этой задаче нельзя использовать инструкцию if, должен быть только один цикл.
Входные данные
На вход подаются четыре строки, в каждой из которых написано по одному неотрицательному целому числу — a , b , c , d . Все числа не превосходят 2⋅10**9 , 0⩽c<d
Андрей
Высший разум
(461022)
Батаев Дмитрий, В тексте вопроса это не указано, а сам автор вопроса решал задачу исходя из предположения, что a <= b.
Обычно, случай, когда надо вывести все числа диапазона, независимо от порядка указания его концов, в учебных задачах обговаривается явно.
Даны целые неотрицательные числа a
, b
, c
, d
, при этом 0⩽c<d
. Выведите в порядке возрастания все числа от a
до b
, которые дают остаток c
при делении на d
.
В этой задаче нельзя использовать инструкцию if, должен быть только один цикл.
Входные данные
На вход подаются четыре строки, в каждой из которых написано по одному неотрицательному целому числу — a
, b
, c
, d
. Все числа не превосходят 2⋅10**9
, 0⩽c<d
Выходные данные
Выведите ответ к задаче.
#include <iostream>
using namespace std;
using ll = long long;
int main()
{
ll a, b, now = a, n, c, d;
cin >> a >> b >> c >> d;
now = a + c - a % d;
for (now; now <= b; now += d){
cout << now << " ";
}
return 0;
}
почему то на этой же задаче валится на 3-м тесте