VIJOS-P1401-复制CS
2013-05-04 14:25
176 查看
这个题只要注意取出重复区间就行了~我做的时候卡死在没有到巡视的最后就已经完成了全部的操作上面,唉,细节啊~
代码:
代码:
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; const int maxn=10001; struct node { double l; double r; bool operator < (const node &a)const { if(l==a.l) return r<a.r; return l<a.l; } }a[maxn]; long long n,k; int m; int main() { while(scanf("%lld%lld%d",&n,&k,&m)!=EOF) { long long fi=1,s=1; for(int i=0;i<m;i++) { scanf("%lf%lf",&a[i].l,&a[i].r); a[i].r+=a[i].l; } sort(a,a+m); double now=0,maxt=0; int i=0; while(fi<n) { if(a[i].l-now>=1.0) { maxt=max(now,a[i].r); int len=(int)(a[i].l-now); int flag=0; for(int j=1;j<=len;j++) { fi+=s; now++; if(fi>=n) { flag=1; break; } s=min(s*2,k); } if(flag) break; now=maxt; i++; } else { maxt=now; while(i<m&&a[i].l-maxt<1.0) { maxt=max(maxt,a[i].r); i++; } if(i>=m) { now=maxt; while(fi<n) { fi+=s; s=min(s*2,k); now++; } } else now=maxt; } } printf("%.2lf\n",now); } return 0; }
相关文章推荐
- 将目录下面所有的 .cs 文件合并到一个 code.cs 文件中,写著作权复制代码时的必备良药
- vs2003复制一个web窗体,没有更改指向同一个cs 文件,引发大问题
- SQL——表结构、表数据的复制,有风整理
- C#.NET 剪切板复制粘贴泛型的例子代码参考 Clipboard Copy Paste List
- oracle Streams创建schema级复制环境
- SQL Server 多实例下的复制
- 第6周项目1.1深复制
- GetExcelNpoi.cs
- Java复制文件夹
- KVO实现自定义文件复制进度展示
- 一步一图搭建-分布式服务器部署之mysql集群-主从复制与读写分离
- javascript 三种数组复制方法的性能对比
- LinqToSQL的dbml生成问题,编译生成时.designer.cs文件被删。
- SqlbulkCopy批量复制数据
- Redis的主从复制设置与安装
- 第六周 项目1-3 深复制体验(2)
- 再谈QVector与QByteArray——Qt的写时复制(copy on write)技术
- mysql 主从复制配置
- 复杂链表的复制。。。链表的复制
- js数组复制的方法