1583: [Usaco2009 Mar]Moon Mooing 哞哞叫

Time Limit: 10 Sec  Memory Limit: 64 MB
Submit: 244  Solved: 126
[Submit][Status][Discuss]

Description

Input

第一行两个数,C和N

第二行3个数,a1,b1,c1 第三行3个数,a2,b2,c2

Output

一个整数代表最长的那一次嚎叫

Sample Input

3 10
4 3 3
17 8 2

Sample Output

65

HINT

 

Source

Gold

题解:难以想象USACO竟然有此般水题,更何况还是GOLD DIVISION。。。(PS:但是我会告诉你我不仅仅第一反应是用堆做,而且还逗比了一次——忘开int64了TT)

其实,由于题目中说了\( d_1 \leq a_1 \)和\( d_2 \leq a_2 \),所以满足\( \frac{a_1}{d_1} \geq 1 \)和\( \frac{a_2}{d_2} \geq 1 \),所以整个迭代式处于一个上升的阶段,也就是说问题就完全成了一个类似归并排序的东西了——直接两条线线性合并下搞定,时间复杂度\( O\left( N \right) \)

 /**************************************************************
Problem:
User: HansBug
Language: Pascal
Result: Accepted
Time: ms
Memory: kb
****************************************************************/ var
i,j,k,l,m,n,a1,b1,c1,a2,b2,c2,i1,i2:longint;
x1,x2:int64;
a:array[..] of int64;
begin
readln(m,n);
readln(a1,b1,c1);
readln(a2,b2,c2);
a[]:=m;i:=;
i1:=;i2:=;
x1:=(a1*m) div c1+b1;
x2:=(a2*m) div c2+b2;
while i<=n do
begin
if x1<x2 then
begin
if x1<>a[i-] then
begin
a[i]:=x1;
inc(i);
end;
inc(i1);
x1:=(a[i1]*a1) div c1+b1;
end
else
begin
if x2<>a[i-] then
begin
a[i]:=x2;
inc(i);
end;
inc(i2);
x2:=(a[i2]*a2) div c2+b2;
end;
end;
writeln(a[n]);
readln;
end.

1583: [Usaco2009 Mar]Moon Mooing 哞哞叫的更多相关文章

  1. [BZOJ1583] [Usaco2009 Mar]Moon Mooing 哞哞叫(队列)

    传送门 思想有点像蚯蚓那个题 #include <cstdio> #define N 4000001 #define LL long long #define min(x, y) ((x) ...

  2. BZOJ1583: [Usaco2009 Mar]Moon Mooing 哞哞叫

    给n<=4000000,c,a1,b1,c1,a2,b2,c2,以c为初始得到的数,每次可以把得到的某个数x进行操作f1(x)=a1*x/c1+b1,f2(x)=a2*x/c2+b2,求最后能得 ...

  3. [USACO09MAR]Moon哞哞叫Moon Mooing(模拟)

    链接:https://ac.nowcoder.com/acm/contest/1086/F来源:牛客网 题目描述 A full moon casts some sort of spell on the ...

  4. bzoj 3399: [Usaco2009 Mar]Sand Castle城堡

    3399: [Usaco2009 Mar]Sand Castle城堡 Time Limit: 3 Sec  Memory Limit: 128 MB Description 约翰用沙子建了一座城堡.正 ...

  5. BZOJ3401: [Usaco2009 Mar]Look Up 仰望

    3401: [Usaco2009 Mar]Look Up 仰望 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 87  Solved: 58[Submit ...

  6. BZOJ3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队

    3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 89  Solve ...

  7. BZOJ3399: [Usaco2009 Mar]Sand Castle城堡

    3399: [Usaco2009 Mar]Sand Castle城堡 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 22  Solved: 17[Sub ...

  8. BZOJ 3401: [Usaco2009 Mar]Look Up 仰望( 单调栈 )

    n <= 105 , 其实是10 ^ 5 ....坑...我一开始写了个模拟结果就 RE 了.. 发现这个后写了个单调栈就 A 了... ---------------------------- ...

  9. 3399: [Usaco2009 Mar]Sand Castle城堡

    3399: [Usaco2009 Mar]Sand Castle城堡 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 37  Solved: 32[Sub ...

随机推荐

  1. #图# #SPFA# #Tarjan# ----- BZOJ1179

    SPFA算法 SPFA(Shortest Path Faster Algorithm)(队列优化)算法是求单源最短路径的一种算法. 判负环(在差分约束系统中会得以体现).如果某个点进入队列的次数超过N ...

  2. bat-bat-bat (重要的事情说三遍)

    去年noip前prey亲授,当时就觉得这是个好东西!非常好!然后我就没学会.接着最近被安利小红的bat!!! 小红bat!!! get!!!谢小红!!! -----> http://www.cn ...

  3. ARC使用小结

    内存管理基本原则 内存管理的依循下面的基本原则 自己生成的对象,那么既是其持有者 不是自己生成的对象,也可成为其持有者(一个对象可以被多个人持有) 如果不想持有对象的时候,必须释放其所有权 不能释放已 ...

  4. 搭建spring工程配置数据源连接池

    Spring作为一个优秀的开源框架,越来越为大家所熟知,前段时间用搭了个spring工程来管理数据库连接池,没有借助Eclipse纯手工搭建,网上此类文章不多,这里给大家分享一下,也作为一个手记. 工 ...

  5. python中将两个list合并为字典

    两个list合并为字典的代码如下: def Run(): list2 = [1, 2, 3, 4, 5 ]; list3 = ["a", "b", " ...

  6. 进阶之初探nodeJS

    一.前言 在"初探nodeJS"随笔中,我们对于node有了一个大致地了解,并在最后也通过一个示例,了解了如何快速地开启一个简单的服务器. 今儿,再次看了该篇随笔,发现该随笔理论知 ...

  7. 【python基础】之list列表

    python提供了一个被称为列表的数据类型,他可以存储一个有序的元素集合. 记住:一个列表可以存储任意大小的数据集合.列表是可变对象,有别于字符串str类,str类是不可变对象. 1.创建一个列表 l ...

  8. Codeforce 712A Memory and Crow

    A. Memory and Crow time limit per test:2 seconds memory limit per test:256 megabytes input:standard ...

  9. db2_merge

    DB2 MERGE INTO语句的使用   DB2中的Merge语句可以将一个表中的数据合并到另一个表中,在合并的同时可以根据条件进行插入.删除.更新等操作,功能非常强大.   语法如下:www.2c ...

  10. CSS3 3D变形效果

    CSS3 3D变形效果 CSS3 transform3D变形 transform的含义是:改变,使-变形:转换 三维变换使用基于二维变换的相同属性,如果您熟悉二维变换,你们发现3D变形的功能和2D变换 ...