题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5924
Mr. Frog’s Problem Problem Description One day, you, a clever boy, feel bored in your math class, and then fall asleep without your control. In your dream, you meet Mr. Frog, an elder man. He has a problem for you.
He gives you two positive integers A and B, and your task is to find all pairs of integers (C, D), such that A≤C≤B,A≤D≤B and A/B+B/A≤C/D+D/C
Input first line contains only one integer T (T≤125), which indicates the number of test cases. Each test case contains two integers A and B (1≤A≤B≤1018).
Output For each test case, first output one line “Case #x:”, where x is the case number (starting from 1).
Then in a new line, print an integer s indicating the number of pairs you find.
In each of the following s lines, print a pair of integers C and D. pairs should be sorted by C, and then by D in ascending order.
Sample Input 2 10 10 9 27
Sample Output Case #1: 1 10 10 Case #2: 2 9 27 27 9
Source 2016CCPC东北地区大学生程序设计竞赛 - 重现赛
分析: 水题。由于A,B是区间的两个端点,所以A/B + B/A 已经就是最大值了。所以当A==B 时答案就是A,B;当不相等时,答案为A,B和B,A
AC代码:
#include #include #include #include #include using namespace std;int main(){ int t,kase=1; char a[30],b[30]; scanf("%d", while(t--) { cin>>a>>b; if(strcmp(a,b)==0) { printf("Case #%d:\n1\n",kase++); cout<" "<