BZOJ 1206: [HNOI2005]虚拟内存
来源:互联网 发布:算法导论第几版好 编辑:程序博客网 时间:2024/05/22 19:35
模拟题
#include<iostream>#include<cstdio>#include<cstring>#include<map>#include<queue>using namespace std;map<int,int>mp;int sz;int id(int x){if(!mp.count(x))mp[x]=++sz;return mp[x];}struct page{int cnt,ti,id;bool operator < (const page &rhs)const{if(cnt!=rhs.cnt)return cnt>rhs.cnt;return ti>rhs.ti;}};priority_queue<page>q;int cnt[1000005];int read(){char ch=getchar();int x=0,f=1;while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}return x*f;}void refresh(){while(q.top().cnt!=cnt[q.top().id]){page x=q.top();q.pop();x.cnt=cnt[x.id];q.push(x);}}int main(){//freopen("a.in","r",stdin);int n=read(),m=read(),ans=0;for(int i=1;i<=m;i++){int k=read();k=id(k);cnt[k]++;if(cnt[k]>1)ans++;else if(q.size()!=n)q.push((page){1,i,k});else refresh(),cnt[q.top().id]=0,q.pop(),q.push((page){1,i,k});}printf("%d\n",ans);return 0;}
0 0
- BZOJ 1206: [HNOI2005]虚拟内存
- bzoj 1206: [HNOI2005]虚拟内存
- bzoj 1206: [HNOI2005]虚拟内存
- BZOJ 1206 [HNOI2005] 虚拟内存 题解
- BZOJ 1206 [HNOI2005] 虚拟内存 题解与分析
- BZOJ 1206 [HNOI2005] 虚拟内存 题解与分析
- [BZOJ]1206: [HNOI2005]虚拟内存 线段树
- [HNOI2005]虚拟内存
- bzoj1206: [HNOI2005]虚拟内存
- BZOJ 1200: [HNOI2005]木梳
- BZOJ 1201: [HNOI2005]数三角形
- BZOJ 1205: [HNOI2005]星际贸易
- BZOJ-1206 虚拟内存 Hash+离散化+Priority_Queue
- 【BZOJ1206】【HNOI2005】虚拟内存,我也就能写写这种模拟题了
- 【BZOJ 1202】 [HNOI2005]狡猾的商人
- BZOJ 1199: [HNOI2005]汤姆的游戏
- BZOJ 1202: [HNOI2005]狡猾的商人
- bzoj 1202 [HNOI2005]狡猾的商人
- GetDeviceCaps查询设备上下文的属性
- java面试题之冒泡排序(由大到小和由小到大)
- Android博客周刊
- 业余android studio开发(3)—— 浏览网页(webView控件)
- PRML学习笔记(一)
- BZOJ 1206: [HNOI2005]虚拟内存
- Ubuntu 14.04使用Qt5不能输入中文的解决办法
- 拖拽图片在Label上显示
- [前端] html+css+javascript 实现选项卡切换效果
- Xcode 真机运行出现错误 Could not inspect the application package. 解决方法
- 业余android studio开发(3.5)—— webView完善,问题处理
- Javascript异步编程的4种方法
- Java字符串常量池
- 对form元素进行脚本编写