当前位置: 首页 > news >正文

做婚庆网站有哪些百度云搜索引擎 百度网盘

做婚庆网站有哪些,百度云搜索引擎 百度网盘,合肥智能建站模板,新闻网站个人可以做吗原题链接:整数删除 给定一个长度为 N 的整数数列:A1,A2,...,AN。 你要重复以下操作 K 次: 每次选择数列中最小的整数(如果最小值不止一个,选择最靠前的),将其删除,并把与它相邻的…

原题链接:整数删除

给定一个长度为 N 的整数数列:A1,A2,...,AN。

你要重复以下操作 K 次:

每次选择数列中最小的整数(如果最小值不止一个,选择最靠前的),将其删除,并把与它相邻的整数加上被删除的数值。

输出 K 次操作后的序列。

输入格式

第一行包含两个整数 N 和 K。

第二行包含 N 个整数,A1,A2,A3,...,AN。

输出格式

输出 N−K个整数,中间用一个空格隔开,代表 K 次操作后的序列。

数据范围

对于 20% 的数据,1≤K<N≤10000。
对于 100% 的数据,1≤K<N≤5×10^5,0≤Ai≤10^8。

输入样例:

5 3
1 4 2 8 7

输出样例:

17 7

样例解释

数列变化如下,中括号里的数是当次操作中被选择的数:

[1] 4 2 8 7
5 [2] 8 7
[7] 10 7
17 7

 解题思路:

此题主要用优先队列+双端链表,优先队列可以替换成能够进行排序的也可,比如set(去重+自动排序),这里利用优先队列实现。利用小根堆,每次弹出来为最小值去更新原数组的值。这里需要判断一下,由于更新值在原数组中更新,优先队列中的值没有被更新,每次进入循环,先要进行判断原数组的值是否与优先队列中的值相等,不相等就更新,相等就按照删除继续操作,k--


代码实现:

#include<iostream>
#include<queue>
#define int long long
using namespace std;
const int N=5e5+5;
typedef pair<int,int> PII;
struct{int pre,num,next;//pre前一个下标,next后一个下标,num当前值
}a[N];
int n,k;
signed main(){priority_queue<PII,vector<PII>,greater<PII>> pq;//小根堆cin>>n>>k;for(int i=1;i<=n;i++){cin>>a[i].num;a[i].pre=i-1;//记录前驱a[i].next=i+1;//记录后驱pq.push(make_pair(a[i].num,i));//把此点数值与下标入队}while(k){//删除k个数PII cur=pq.top();//小根堆,每次弹出都是最小值pq.pop();int id=cur.second,w=cur.first;//记录弹出的下标与值int l=a[id].pre,r=a[id].next;//记录前后驱if(w!=a[id].num){//如果队列中的值与原数组更新后的不相等pq.push(make_pair(a[id].num,id));//把新值入队continue;//k不动,更新操作}//else就是删除更新操作k--;a[l].num+=w;//前一个加wa[r].num+=w;//后一个加wa[l].next=r;//双端队列删除id结点a[r].pre=l;a[id].num=0;//删掉了为0}for(int i=1;i<=n;i++){if(a[i].num){cout<<a[i].num<<" ";}}return 0;
}
http://www.dinnco.com/news/72485.html

相关文章:

  • 复制推广链接浙江seo
  • 办公用品网站建设市场定位网络营销师证
  • 做app做网站从何学起营销传播服务
  • 建站网址不安全电话号码宣传广告
  • 深圳营销型网站建设哪家好站长工具怎么关闭
  • 动漫做a视频网站有哪些保定关键词优化软件
  • 网站建设翻译插件seo精华网站
  • 网页传奇游戏排行榜2014前十名关键词优化排名软件s
  • 修改备案网站信息免费宣传网站
  • wordpress多站点 文章导入反向链接查询
  • 济南 手机网站制作霸屏推广
  • 政协信息化网站建设的请示品牌推广文案
  • 国家级门户网站有哪些市场营销分析案例
  • 网站优化员seo招聘如何seo网站推广
  • 个人网站建设模板搜索引擎营销的简称是
  • 怎么给网站做https互联网营销师考试
  • 让别人做网站需要注意什么seo优化案例
  • 引用网站信息怎么做备注站长统计 站长统计
  • 深圳网站建设有限公司alexa排名查询统计
  • 免费网站开发源代码免费网站统计工具
  • 做视频的音乐哪里下载网站全球搜索
  • 佛山做礼物的网站网站怎么做推广和宣传
  • 恢复2345网址导航沈阳seo博客
  • 网站怎么做构成网络推广外包哪家好
  • wordpress熊掌号出图昆明百度关键词优化
  • 武汉小程序网站开发app推广兼职是诈骗吗
  • 那些网站专门做游戏辅助的宁波seo网络推广优化价格
  • 建湖县建设局网站最有效的免费推广方法
  • 2345的网址外贸seo公司
  • 建站系统和构建系统口碑营销成功案例