1672 區間交
基準時間限制:1 秒 空間限制:131072 kb 分值: 40
難度:4級演算法題
小a有乙個含有n個非負整數的數列與m個區間,每個區間可以表示為li,ri。
它想選擇其中k個區間, 使得這些區間的交的那些位置所對應的數的和最大。(是指k個區間共同的交,即每個區間都包含這一段,具體可以參照樣例)
在樣例中,5個位置對應的值分別為1,2,3,4,6,那麼選擇[2,5]與[4,5]兩個區間的區間交為[4,5],它的值的和為10。
input
第一行三個數n,k,m(1<=n<=100000,1<=k<=m<=100000)。output接下來一行n個數ai,表示小a的數列(0<=ai<=10^9)。
接下來m行,每行兩個數li,ri,表示每個區間(1<=li<=ri<=n)。
一行表示答案input示例
5 2 3output示例1 2 3 4 6
4 52 5
1 4
10透過現象看本質 相交的區間的左端點 一定是 某乙個區間的左端點 那麼列舉這個左端點就可以了 貪心選取右端點
#include #include #include #include using namespace std;
typedef long long ll ;
const int n = 100010;
ll sum[n], a[n];
multisetst;
struct node
}cout<
51nod 1672 區間交(線段樹)
1672 區間交 基準時間限制 1 秒 空間限制 131072 kb 分值 40 難度 4級演算法題 小a有乙個含有n個非負整數的數列與m個區間,每個區間可以表示為li,ri。它想選擇其中k個區間,使得這些區間的交的那些位置所對應的數的和最大。是指k個區間共同的交,即每個區間都包含這一段,具體可以參...
51nod 1672 區間交 線段樹 貪心
小a有乙個含有n個非負整數的數列與m個區間,每個區間可以表示為li,ri。它想選擇其中k個區間,使得這些區間的交的那些位置所對應的數的和最大。是指k個區間共同的交,即每個區間都包含這一段,具體可以參照樣例 在樣例中,5個位置對應的值分別為1,2,3,4,6,那麼選擇 2,5 與 4,5 兩個區間的區...
51nod 1712 區間求和
解法 這個題首先考慮乙個簡單情況 對於區間 x,y 權值為多少。容易寫出公式 f x y s y s x 1 sum y sum x 1 x 1 sum x 1 y x 1 其中s x 表示 從第乙個元素到第x個元素的 所有有序二元組的和 題目中定義的 sum表示字首和 這裡要求的是所有a x a ...