7620:區間合併
總時間限制:
1000ms
記憶體限制:
65536kb
描述 給定 n 個閉區間 [ai; bi],其中i=1,2,...,n。任意兩個相鄰或相交的閉區間可以合併為乙個閉區間。例如,[1;2] 和 [2;3] 可以合併為 [1;3],[1;3
] 和 [2;4
] 可以合併為 [1;4],但是[1;
2] 和 [3;4
] 不可以合併。
我們的任務是判斷這些區間是否可以最終合併為乙個閉區間,如果可以,將這個閉區間輸出,否則輸出no。
輸入第一行為乙個整數n,3 ≤ n ≤ 50000。表示輸入區間的數量。
之後n行,在第i行上(1 ≤ i ≤ n),為兩個整數 ai 和 bi ,整數之間用乙個空格分隔,表示區間 [ai; bi](其中 1 ≤ ai ≤ bi ≤ 10000)。
輸出輸出一行,如果這些區間最終可以合併為乙個閉區間,輸出這個閉區間的左右邊界,用單個空格隔開;否則輸出 no。
樣例輸入
55 61 5
10 10
6 98 10
樣例輸出
1 10
**習題(14-8)
#include #include #include #include #include #include #include #include #include #include #include #include using namespace std;
typedef long long ll;
#define max 1000001
//int a[max][max];
//int b[max][max];
//int res[max][max];
char c1[200];
char c2[200];
struct node;
bool cmp(node a, node b)
return a.x < b.x;
}//這個是 有點像貪心演算法?
int main()
sort(node, node + n, cmp); //先排序
int begin = node[0].x; //記第乙個起始位置和結束位置
int end = node[0].y;
for(int i = 1; i < n; i++)
}else
}cout << begin << " " << end << endl;;
return 0;
}
7620 區間合併
總時間限制 1000ms 記憶體限制 65536kb 描述 給定 n 個閉區間 ai bi 其中i 1,2,n。任意兩個相鄰或相交的閉區間可以合併為乙個閉區間。例如,1 2 和 2 3 可以合併為 1 3 1 3 和 2 4 可以合併為 1 4 但是 1 2 和 3 4 不可以合併。我們的任務是判斷...
7620 區間合併
總時間限制 1000ms 記憶體限制 65536kb 描述給定 n 個閉區間 ai bi 其中i 1,2,n。任意兩個相鄰或相交的閉區間可以合併為乙個閉區間。例如,1 2 和 2 3 可以合併為 1 3 1 3 和 2 4 可以合併為 1 4 但是 1 2 和 3 4 不可以合併。我們的任務是判斷這...
803 區間合併
給定 n 個區間 l i,r i 要求合併所有有交集的區間。注意如果在端點處相交,也算有交集。輸出合併完成後的區間個數。例如 1,3 和 2,6 可以合併為乙個區間 1,6 輸入格式 第一行包含整數n。接下來n行,每行包含兩個整數 l 和 r。輸出格式 共一行,包含乙個整數,表示合併區間完成後的區間...