hdu 6047 Maximum Sequence
来源:互联网 发布:淘宝轮毂 编辑:程序博客网 时间:2024/05/19 04:26
http://acm.hdu.edu.cn/showproblem.php?pid=6047
题意,给定一个数组
例如样例:
4
8 11 8 5
3 1 4 2
选择
选择
选择
选择
则
考虑用一个优先队列维护
#include <bits/stdc++.h>using namespace std;typedef long long ll;const ll MOD = 1e9+7;int a[300000];int b[300000];struct node{ int a,id;};struct cmp{ bool operator ()(const node &a,const node &b){ return a.a<b.a; }};priority_queue< node ,vector<node > ,cmp> Q;int main(){ int n; while(~scanf("%d",&n)){ for(int i=1;i<=n;i++) scanf("%d",a+i); for(int i=1;i<=n;i++) scanf("%d",b+i); for(int i=1;i<=n;i++) a[i]-=i; int tmx = a[n]; while(!Q.empty()) Q.pop(); sort(b+1,b+1+n); ll ans = 0; for(int i=1;i<=n;i++){ Q.push(node{a[i],i}); } int t=0; for(int i=n+1;i<=n+n;i++){ while(Q.top().id<b[i-n]) Q.pop(); node now = Q.top(); ans += now.a; ans %= MOD; Q.push(node{now.a-i,i}); } cout<<ans<<endl; } return 0;}
阅读全文
0 0
- [HDU]-6047 Maximum Sequence
- hdu 6047 Maximum Sequence
- [HDU 6047]Maximum Sequence
- HDU 6047 Maximum Sequence
- hdu 6047 Maximum Sequence
- HDU 6047 Maximum Sequence
- hdu 6047 Maximum Sequence
- HDU 6047 Maximum Sequence
- hdu--6047--Maximum Sequence
- hdu 6047 Maximum Sequence
- HDU 6047 Maximum Sequence
- hdu 6047 Maximum Sequence
- HDU 6047 Maximum Sequence
- hdu-6047-Maximum Sequence
- HDU 6047 Maximum Sequence
- hdu 6047 Maximum Sequence
- HDU 6047 Maximum Sequence
- Maximum Sequence HDU 6047
- 关于js接收后台时间戳转换成时间问题
- scrapy-redis集成scrapy-splash使用教程
- 图像特征的特点及其常用的特征提取与匹配方法
- TP语法
- PAT B1060. 爱丁顿数
- hdu 6047 Maximum Sequence
- Tiling UVALive
- Java日期格式转换
- 使用ViewPager的功能(解决切换Fragment状态不保存)
- SAP ABAP开发实用快捷键
- C#将项目的dll,打包到exe文件中,使用LoadResourceDll类
- Lua中的三目运算符
- 使用apache的commons.io包读取文件
- OpenCV3.0 + VS2013 配置一:基本配置