测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A26383. 区间的交

填空题 较易

题目描述

区间的交

题目描述

一个区间可以由两个整数描述,表示为 [a,b], 意思是所有大于等于 a 且小于等于 b 的数字。

给定两个区间,第一个是 [a,b],第二个是 [p,q],请判断这两个区间的关系。

如果这两个区间没有公共的交集,输出 Disjoint

否则,如果一个区间完全包含另一个区间,输出 Nested

否则,如果两个区间有一部分内容重叠,输出 Overlap

输入格式

第一行:两个整数 a 与 b

第二行:两个整数 p 与 q

输出格式

根据区间的相交关系输出 Disjoint、Nested 或 Overlap

输入样例1

1 10
2 20

输出样例1

Overlap

输入样例2

-1 1
10 20

输出样例2

Disjoint

输入样例3

-100 100
-10 10

输出样例3

Nested

说明提示

-1,000,000,000≤a≤b≤1,000,000,000

-1,000,000,000≤p≤q≤1,000,000,000


参考答案

#include <iostream> using namespace std; int main() { int a, b, p, q; cin >> a >> b >> p >> q; // 判断是否无交集 if (b < p || q < a) { cout << "Disjoint" << endl; } // 判断包含关系 else if ((a <= p && q <= b) || (p <= a && b <= q)) { cout << "Nested" << endl; } // 部分重叠情况 else { cout << "Overlap" << endl; } return 0; }
上一题 下一题