题目原址
使用莫队算法即可
#include
#include
#include
#include
using namespace std;
#define maxn 1000010
#define ll long long int
typedef struct nodee{
int l,r;
int indx;
}node;
node maze[maxn];
ll n,m,k,summ;
ll sum[maxn],num[maxn];
ll a[maxn],vis[maxn];
bool cmp(node u,node v)
{
if(vis[u.l]==vis[v.l])
return u.rmaze[i].r){
min(a[r]);
r--;
}
while(lmaze[i].l){
l--;
pls(a[l-1]);
}
sum[maze[i].indx]=summ;
}
for(i=1; i<=m; i++)
printf("%lld\n",sum[i]);
return 0;
}