堆——洛谷 P1323 删数问题
来源:互联网 发布:重庆网络运营推广 编辑:程序博客网 时间:2024/06/17 20:00
https://www.luogu.org/problem/show?pid=1323
对于集合元素的求法,我们可以大力queue
直接建一颗小根堆;
对于最后求答案,那么直接贪心就好了;
大力找到第一个递增序列,删掉第一个元素
#include<bits/stdc++.h>#define Ll long longusing namespace std;priority_queue<Ll ,vector<Ll >,greater<Ll > >Q;Ll a[100],ll;int v[3000000],top;Ll n,m,k,l;char c[3000000];bool b[3000000];int main(){ scanf("%lld%lld",&n,&m); Q.push(1); while(n--){ Ll x=Q.top();Q.pop(); Q.push(x*2+1); Q.push(x*4+5); for(;x;x=x/10)a[++ll]=x%10; while(ll)c[++l]=char(a[ll--]+48); } for(Ll i=1;i<=l;i++)printf("%c",c[i]);cout<<endl; for(int i=1;i<=l&&m;i++){ while(top&&m&&c[v[top]]<c[i])b[v[top--]]=1,m--; v[++top]=i; } for(Ll i=1;i<=l;i++)if(!b[i])printf("%c",c[i]);}
阅读全文
1 0
- 堆——洛谷 P1323 删数问题
- 硬币分堆--补数问题
- vijos-p1323 2008.11.9
- 贪心算法——删数问题
- 贪心算法—删数问题
- OJ——01堆砖块问题
- c++内存问题——堆、栈
- 洛谷P1106 删数问题
- 洛谷 P1106 删数问题
- 数独问题—题解
- 数据结构与算法分析(Java语言描述)(12)—— 堆排序与数组建堆
- 算法设计与分析——删数问题
- dp——洛谷P2822 组合数问题
- 网络流——洛谷P2774 方格取数问题
- 堆排序的问题——大顶堆例子
- Top K问题——基于堆排序
- 算法——TOP K问题最小堆实现
- 算法——TOP K问题最小堆实现扩展
- 关于Java面试,你应该准备这些知识点
- Linux cp 命令
- 网易2017实习笔试题-CPU双核调度问题(dp 01背包)
- 代码自动生成工具(二)-miniproto的c#库实现
- bzoj4925: 城市规划
- 堆——洛谷 P1323 删数问题
- 超时与重试机制(1)—《亿级流量》
- 刷清橙OJ--A1079.行列式计算
- Linux后台开发应该具备技能
- RandomAccessFile 关于getFilePointer的问题
- 将RTSP网络摄像机进行网页和微信直播的方案
- 【Java并发】
- PCB走线注意事项
- 阿里高可用的两大法宝