- 年轻的摄影师
思路
- @ 2025-1-23 15:03:28
cin>>n>>x
ml mr 最终区间
for(n){
l r
if(l>r) swap(l,r);
ml = max(ml,l);
mr = min(mr,r);
}
公共区间 ml~mr ;
ml>mr 输出 -1 结束
x 和这个区间的关系
x>mr mr-x
x<ml ml -x
否则 0
1 条评论
-
仵忧 LV 6 @ 2025-2-5 14:38:11已修改#include <bits/stdc++.h> using namespace std; int main(){ int n, x; cin >> n >> x; int ml = -1; int mr = 1001; for(int i = 0; i < n; i++){ int l, r; cin >> l >> r; if (l > r) swap(l, r); ml = max(ml, l); mr = min(mr, r); } if(ml > mr){ cout << -1; }else{ int a = -1; if(x < ml){ a = ml; }else if(x > mr){ a = mr; }else{ a = x; } cout << abs(a - x); } return 0; }
- 1
信息
- ID
- 11
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 94
- 已通过
- 21
- 上传者