bzoj1583 [Usaco2009 Mar]Moon Mooing 哞哞叫
2017-11-08 22:47
405 查看
题目
一道类似两个序列合并的东西,通法就是上一个优先队列就好了,但是这道题会超时。
但是,仔细观察一下,序列是单增的(a>c),这就很好办了,类似做一个归并就好了。
一道类似两个序列合并的东西,通法就是上一个优先队列就好了,但是这道题会超时。
但是,仔细观察一下,序列是单增的(a>c),这就很好办了,类似做一个归并就好了。
#include<bits/stdc++.h> #define N 5000000 using namespace std; int n,a1,b1,c1,a2,b2,c2,C; int cnt,p1,p2; unsigned long long f[N+5],nxt1,nxt2; int main() { freopen("in.txt","r",stdin); cin>>C>>n; cin>>a1>>b1>>c1; cin>>a2>>b2>>c2; f[1]=C; p1=p2=1; nxt1=f[1]*a1/c1+b1; nxt2=f[1]*a2/c2+b2; for(int i=2;i<=n;) { if (nxt1<nxt2) { if (nxt1!=f[i-1])f[i++]=nxt1; nxt1=f[++p1]*a1/c1+b1; } else{ if(nxt2!=f[i-1])f[i++]=nxt2; nxt2=f[++p2]*a2/c2+b2; } } cout<<f ; return 0; }
相关文章推荐
- BZOJ1583: [Usaco2009 Mar]Moon Mooing 哞哞叫
- [BZOJ1583] [Usaco2009 Mar]Moon Mooing 哞哞叫(队列)
- 1583: [Usaco2009 Mar]Moon Mooing 哞哞叫
- 【BZOJ 1585】 [Usaco2009 Mar]Earthquake Damage 2 地震伤害 最小割
- bzoj1584【Usaco2009 Mar】Cleaning Up 打扫卫生
- bzoj3401 [Usaco2009 Mar]Look Up 仰望 单调栈
- 【bzoj1584】[Usaco2009 Mar]Cleaning Up 打扫卫生 DP
- BZOJ1584: [Usaco2009 Mar]Cleaning Up 打扫卫生
- [BZOJ1584] [Usaco2009 Mar]Cleaning Up 打扫卫生(DP)
- [bzoj1584] [Usaco2009 Mar]Cleaning Up 打扫卫生
- bzoj 3399: [Usaco2009 Mar]Sand Castle城堡
- BZOJ 3399 [Usaco2009 Mar]Sand Castle城堡(贪心)
- bzoj 1584: [Usaco2009 Mar]Cleaning Up 打扫卫生
- BZOJ 3401: [Usaco2009 Mar]Look Up 仰望
- 【BZOJ】1585: [Usaco2009 Mar]Earthquake Damage 2 地震伤害
- [BZOJ3401] [Usaco2009 Mar]Look Up 仰望
- BZOJ3399: [Usaco2009 Mar]Sand Castle城堡
- BZOJ 1584 [Usaco2009 Mar] Cleaning Up
- BZOJ_1584_[Usaco2009 Mar]Cleaning Up 打扫卫生_DP
- [BZOJ3399] [Usaco2009 Mar]Sand Castle城堡