1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| #include <cstdio> #define MAXN 5000 int sum[MAXN]; int main() { int T, a, b; scanf("%d", &T); for(int i = 2; i <= MAXN; i++) sum[i] = 2; sum[1] = 1; for(int i = 2; i <= MAXN; i++){ for(int j = i + i; j <= MAXN; j += i) sum[j]++; } while(T--){ scanf("%d%d", &a, &b); int maxs = sum[a], index = a; for(int i = a; i <= b; i++)if(maxs < sum[i]){ maxs = sum[i]; index = i; } printf("%d\n", index); } return 0; }
|