Оптимизация кода - Pascal (47747)
Формулировка задачи:
Помогите пожалуйста.
Такая проблема всплыла, нужно оптимизировать код, чтобы он выполнялся за 1 секунду, но идей как это сделать 0
На входных данных там целое число n, 1≤n≤10^9.
Программа выводит количество различных натуральных делителей числа n
var i,a,n:integer; begin read(a); n:=0; for i:=1 to a do if a mod i=0 then n:=n+1; writeln(n); end.
Решение задачи: «Оптимизация кода»
textual
Листинг программы
var a: Longint; n, q, i: Integer; begin Read(a); q:=Trunc(SqRt(a)); for i:=1 to q do if a mod i=0 then Inc(n,2); if Sqr(q)=a then Dec(n); WriteLn(n); end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д