标签:
描述1、2、3… …n这n(0<n<=1000000000)个数中有多少个数可以被正整数b整除。
2 1 5 3 10 4
2 1 2
此题如果按从第一个数开始试除b,然后除尽一个定义的变量加一的话提交就会显示超时。那有没有简单的算法呢?当然,如果换一种思路,用最后一个数去除b的话恰好所得的商就是所要求得的个数,这样就会节省更多的时间。是不是很神奇呢?不过你要想想这是为什么呢?
1 #include <stdio.h> 2 3 int main () 4 { 5 unsigned a ,n; 6 while ( scanf ("%u%u",&n, &a)! = EOF) 7 { 8 ( a==1 ? printf("%u\n",n) : printf ( "%u\n", n/a ); 9 } 10 return 0; 11 }
标签:
原文地址:http://www.cnblogs.com/nynu-ycg6/p/4669356.html