|
Гадание
(Время: 1 сек. Память: 16 Мб Сложность: 13%)
Для решения этой задачи можно организовать перебор всех возможных чисел от 1 до n (делитель числа n не может быть больше самого n) и проверить каждое из них на делимость. Каждый раз при нахождении очередного делителя его следует прибавлять к некоторой целочисленной переменной s, которую предварительно следует обнулить. Является ли делитем число k для n проверить можно с помощью вычисления остатка от деления: число k - делитель числа n тогда и только тогда, когда n mod k = 0 (остаток от деления n на k равен нулю, в языке Си вместо n mod k пишут n % k).
Решение этой, довольно простой задачи, в алгоритмической записи может выглядеть так:
int n,k,s=0;
for k=1..n{
if(n mod k = 0) s = s+k;
}
write(s);
| |