当前位置: 首页 > 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.hkea.cn/news/670541/

相关文章:

  • 为网站添加统计媒介
  • 商业设计网站推荐互联网营销师证书是国家认可的吗
  • 做网站的是干嘛的怎样把自己的产品放到网上销售
  • 品牌型网站制作价格2022年小学生新闻摘抄十条
  • 政府网站群集约化建设网络暴力事件
  • 可以做卷子的网站游戏app拉新平台
  • 长沙优化网站关键词社区营销
  • 个人网站制作价格表重庆关键词优化
  • 网站开发ideseo优化网站模板
  • 关于制作网站收费标准怎样把个人介绍放到百度
  • 网站建设 绵阳百度开放平台
  • discuz修改网站标题微信小程序开发平台
  • 怎么做国内网站吗seo顾问培训
  • 网站排名不稳定怎么办seo+网站排名
  • 做网站要淘宝热搜关键词排行榜
  • 做网站 创业 流程网络建站流程
  • 怎么做购物网站系统文本广州网络营销推广
  • 网站后台管理系统cms推广seo网站
  • 企业网站备案注销百度推广登陆平台
  • 重庆如何软件网站推广网站优化seo
  • 最专业的佛山网站建设价格3小时百度收录新站方法
  • wordpress门户建站html网页完整代码作业
  • 子域名 做单独的网站广州seo外包公司
  • 凡科建设网站的步骤永久免费无代码开发平台网站
  • 建设一个百度百科类网站网站排名优化的技巧
  • 自己做网站可以吗淄博做网站的公司
  • 个人做健康网站好吗宁波网站制作与推广价格
  • 长沙有哪些做网站的连云港seo优化公司
  • 青羊区定制网站建设报价搜索引擎营销方案
  • 淘宝优惠券查询网站怎么做域名备案官网