网站建设费算办公费吗,pc端移动端网站怎么做的,电子商务网站设计分析怎么做,合肥网站开发cnfg正题
题目链接:https://jzoj.net/senior/#main/show/4815 题目大意 nnn个数的序列#xff0c;求前kkk大的子段。 解题思路
一个区间的答案肯定比他的所有子区间要大#xff0c;所以我们先把(1,i)(1,i)(1,i)都丢进堆里#xff0c;然后每次取出最大的再将(l1,r)(l1,r)(l1,r)…正题
题目链接:https://jzoj.net/senior/#main/show/4815 题目大意
nnn个数的序列求前kkk大的子段。 解题思路
一个区间的答案肯定比他的所有子区间要大所以我们先把(1,i)(1,i)(1,i)都丢进堆里然后每次取出最大的再将(l1,r)(l1,r)(l1,r)丢进去即可。 codecodecode
#includecstdio
#includecstring
#includealgorithm
#includequeue
#define ll long long
using namespace std;
const ll N1e510;
struct node{ll l,r,val;
};
bool operator(node x,node y)
{return x.valy.val;}
ll n,k,a[N];
priority_queuenode q;
int main()
{freopen(ksum.in,r,stdin);freopen(ksum.out,w,stdout); scanf(%lld%lld,n,k);for(ll i1;in;i){scanf(%lld,a[i]),a[i]a[i-1];q.push((node){1,i,a[i]});}for(ll i1;ik;i){node xq.top();q.pop();printf(%lld ,x.val);q.push((node){x.l1,x.r,a[x.r]-a[x.l]});}
}