Trích:
giangmeo
bạn gọi t[i] là tổng các ước của i (trừ đi i nhé) rồi phần còn lại thì khá là dơn giản.
này nhé:
Code:
for i:=1 to n do
begin
for j:=2 to i-1 do
if i mod j =0 then
begin
t[i]:=t[i-j]+j;
break;
end;
t[i]:=1;
if t[i]=i then
write(i,'la so hoan hao'); end;
đại khái là thế bạn có thế tối ưu thêm
|
Đoạn màu đỏ mình thấy ko ổn lắm