d717: 好多因子
Tags :
Accepted rate : 17人/27人 ( 63% ) [非即時]
評分方式:
Tolerant

最近更新 : 2010-05-23 20:25

Content
给你一个范围的数,请你写一个程式找出在这个范围内的数,哪一个数有最多的除数(就是小于等于这个数,且可以被这个数除尽的数。例如:6有4个除数,分别是1,2,3,6)。数的大小超大,范围也超大,所以你的程式必须有效率,否则可能无法在几秒内跑完。
Input

输入的第一列有一个正整数N,代表以下有几组测试资料。每组测试资料一列,含有2个正整数L,U,代表某一范围的数中最小及最大的数。并且1 <= L <= U <= 2147483647,0 <= U-L <= 2147483646.

Output

对每一组测试资料,找出在范围内有最多除数的数P(如果有不止一个数有最多除数,请找最小的那个),以及他有多少个除数D。然后依这样的格式输出:'Between L and U , P has a maximum of D divisors.。请参考Sample Output。

Sample Input
4
1 10
1000 1000
999999900 1000000000
1 2147483647
Sample Output
Between 1 and 10, 6 has a maximum of 4 divisors.
Between 1000 and 1000, 1000 has a maximum of 16 divisors.
Between 999999900 and 1000000000, 999999924 has a maximum of 192 divisors.
Between 1 and 2147483647, 2095133040 has a maximum of 1600 divisors.
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (100%): 3.0s , <1M
Hint :

ACM 294 d366: Divisors 加强版

再想想别的什么更快的方法!d366中的提示在这题是应该有用的,但不稍加改进就会TLE哟!

大概不超过100笔测资,测资有误或太简单欢迎提供及修正...

Tags:
出處:
UVa294加強版 [管理者:
liouzhou_101 (王启圣)
]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」