现在看来这个题真心不难、

如果能保证一个从大到小的顺序的话,对所有的数依次进行相同比例的分裂操作,左右两边一定也是单调的

由于每次要+q,等价于取出元素-q,这在式子里是不影响大小关系的

所以就sort+queue就可以了

码:

#include<iostream>
#include<cstdio>
#include<queue>
#include<algorithm>
using namespace std;
#define ll long long
queue<ll>q[4];
int i,j,n,m,p,t,wz,lin[8000005];
ll u,v,o,tot;
bool cmp(ll a,ll b)
{return a>b;}
int main()
{scanf("%d%d%d%lld%lld%d",&n,&m,&p,&u,&v,&t);for(i=1;i<=n;i++){    scanf("%lld",&lin[i]);        }sort(lin+1,lin+1+n,cmp);for(i=1;i<=n;i++)q[2].push(lin[i]);for(i=1;i<=m;i++){o=-2147483647,wz=0;for(j=1;j<=3;j++){if(q[j].empty())continue;if(q[j].front()>o){o=q[j].front();wz=j;}}o+=tot;if(!(i%t)){     if(m/t*t==i)printf("%lld",o);else printf("%lld ",o); }   tot+=p;q[wz].pop();q[1].push(o*u/v-tot);q[3].push(o-(o*u/v)-tot);}printf("\n");for(i=1;i<=m+n;i++){o=-2147483647,wz=0;for(j=1;j<=3;j++){if(q[j].empty())continue;if(q[j].front()>o){o=q[j].front();wz=j;          }}o+=tot;
if(!(i%t)){  if((m+n)/t*t==i)printf("%lld",o);else printf("%lld ",o); }q[wz].pop();      }
}

2017.10.1 蚯蚓 思考记录相关推荐

  1. 2017.10.28 排序 思考记录

    这个题有一种套路,就是大小关系转化成01串,这样就变成了二分检验问题,, 就是把排序变成区间修改,然后单点查询.. 把所有比他小的赋成0,比他大的赋成1 然后判断要求位是0还是1来判断答案与当前值的大 ...

  2. 2017.10.28 压缩 思考记录

    这个题首先要知道M和R不是栈的搭配,是贪心的搭配,,就是向左找到第一个M.. 如 abababab cdcdcdcd abababab cdcdcdcd   = abRRcdcdcdcdR != Ma ...

  3. 2017.10.6 单词 思考记录

    少有的会做的ac自动机题 .这个题是匹配模式串. 所以就不需要匹配的过程,只需要建出fail树,然后直接拓扑 由于每次加进去一个单词,这个单词的每一个字母都有可能作为最后一个字母影响他的失配,所以词路 ...

  4. 2017.10.5 高速公路 思考记录

    ..一开始死活不知道样例8/3是怎么算出来的.. 后来才发现右端点要-1.. 这个题说是期望,但因为每个点的概率相同,所以直接求和然后除就可以了 维护每个区间的答案,听说直接维护答案很难写,,感觉还可 ...

  5. 2017.9.10 连续攻击游戏 思考记录

    这个题..可以把它当成结论题搞, 结论就是对于每个数字的出现次数,如果区间1~n内的出现次数都>=2,那么这个区间1~n内都会合法 这个结论很好证明,连到外面可以视为停止   外面连进来的可以视 ...

  6. 2017.10.10 杀人游戏 思考记录

    这个题题目描述还是有一点问题..这里的知道关系是有传递性的.第一次理解成只会明白直接相连的,最小点覆盖  --   这样就成np了吧.. 所以就比较显然了,,对于每组能互达的强连通分量,都只需一个头上 ...

  7. 2017.9.10 序列操作 思考记录

    唉,怎么说呢.pushdown要注意的事全忘光了.写+调竟然花了两个小时. 要注意反转时是^1而不是=1! 下传标记不要单纯管顺序,因为没有任何意义,要确保在任意时刻一个点只有一种同级标记!!比如赋值 ...

  8. 2017.9.10 土地购买 思考记录

    ..这个题结论还是比较好猜的. 就是把土地按长为第一关键字,宽为第二关键字,这样就可以省去许多包含的土地 剩下的就是长度递增.宽递减的土地: 剩下的就是斜率优化了,但wa了好几遍,,这是因为: 1.数 ...

  9. 2017.8.10 奖励关 思考记录

    %%ISA   的 期望算法. 首先期望不是单独的一个东西,他后面必须加上一个东西(如期望步数.期望分数.期望个数) 那么期望XX  就是进行无穷次   出现的各个XX趋向于的一个值,,所以也叫平均X ...

最新文章

  1. 0.基于C++的图像处理算法实现、INTEL CPU上SSE加速、ARM CPU上NEON加速
  2. 嘿,程序员,你该学点经济学了!
  3. 转vc++ 类自己消失
  4. 成功解决pandas.core.indexing.IndexingError: Too many indexers
  5. linux 中断程序设计,Linux中断编程
  6. mesageflow 集成spider 开发思路 手稿
  7. aodv协议C语言代码,AODV协议的运行方式
  8. python爬虫笔记(七):实战(三)股票数据定向爬虫
  9. HTML简介与历史版本
  10. 如何禁用Web表单字段/输入标签上的浏览器自动完成功能?
  11. 【linux】xrander/cvt自定义分辨率
  12. C++中的指针和-操作符
  13. 大神总结的一套PCB学习方法! 真得很受用!
  14. HTML 实现扫雷游戏
  15. 产生指数分布的随机数 C语言实现
  16. 《头文字D》热门同人插画欣赏
  17. 分位数回归(Quantile Regression)
  18. 2014年360广告算法面试经历
  19. “玲珑杯”郑州轻工业学院第九届ACM程序设计大赛圆满结束
  20. 客服新人有哪些建议(职场老油条的几个实用性技巧)

热门文章

  1. mysql本周数据没有填充_MySql查询本周、本月、本年数据(没有数据则补全0)
  2. spark内核揭秘-14-Spark性能优化的10大问题及其解决方案
  3. jQuery学习之八---文档处理
  4. JSP页面元素-新手向
  5. Java中按位运算符
  6. 大华的支持rtmp推流吗_RTSP安防摄像机(海康大华宇视等)如何推送到RTMP流媒体服务器进行直播...
  7. vb.net 判断是否为ip 正则_什么是个人IP科学定位?标准答案来了|ip|直播|科学|ip魔方...
  8. 15_python基础—文件操作
  9. python递归函数的使用方法_让你Python到很爽的加速递归函数的装饰器
  10. git 提交_GIT提交规范的使用和总结