CF1108A Two distinct points 题解
Content
有 \(q\) 次询问,每次询问给定四个数 \(l_1,r_1,l_2,r_2\)。对于每次询问,找到两个数 \(a,b\),使得 \(l_1\leqslant a\leqslant r_1,l_2\leqslant b\leqslant r_2\) 且 \(a\neq b\)。
数据范围:\(1\leqslant q\leqslant 500,1\leqslant l_1,r_1,l_2,r_2\leqslant 10^9,l_1<r_1,l_2<r_2\)。
Solution
我们看是否有 \(l_1=l_2\),如果有的话那么 \(a=l_1,b=r_2\),否则就可以 \(a=l_1,b=l_2\)。这方法很智障,但可以保证它是满足要求的。
Code
int n;
int main() {
getint(n);
while(n--) {
int l1, r1, l2, r2;
getint(l1), getint(r1), getint(l2), getint(r2);
if(l1 == l2) writeint(l1), putchar(' '), writeint(r2), putchar('\n');
else writeint(l1), putchar(' '), writeint(l2), putchar('\n');
}
return 0;
}