pascal 求1-N之间所有含0的数的个数

来源:百度知道 编辑:UC知道 时间:2024/06/01 11:28:25
RT
1<=N<=1,0000,0000
注意是含0数个数,不是有多少个0
我用枚举到100万就超时了,谁给个不超时的优化算法\程序?
详细讲一下数学方法怎么用啊
我也知道用数学方法,但是想不出?

var i,n,tot:longint;
s:string;
begin
readln(n);
for i:=1 to n do
begin
str(i,s);
if pos('0',s)<>0 then inc(tot);
end;
writeln(tot);
end.

这个程序20000000是极限,还差一点
还是要用数学方法

用枚举法一定超时的
只能用数学方法解