题目名称 | 2085. [SYOI 2015] Asm.Def的一秒 |
---|---|
输入输出 | asm_second.in/out |
难度等级 | ★★☆ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 | cqw 于2015-11-02加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:34, 提交:112, 通过率:30.36% | ||||
chaijing | 100 | 0.080 s | 2.60 MiB | C++ |
Fmuckss | 100 | 0.100 s | 3.36 MiB | C++ |
chaijing | 100 | 0.120 s | 2.60 MiB | C++ |
chaijing | 100 | 0.130 s | 2.60 MiB | C++ |
chaijing | 100 | 0.137 s | 2.60 MiB | C++ |
SliverN | 100 | 0.137 s | 3.37 MiB | C++ |
chaijing | 100 | 0.139 s | 2.60 MiB | C++ |
Void | 100 | 0.166 s | 2.60 MiB | C++ |
Void | 100 | 0.174 s | 2.60 MiB | C++ |
Void | 100 | 0.174 s | 2.60 MiB | C++ |
本题关联比赛 | |||
“Asm.Def战记之太平洋”杯 |
关于 Asm.Def的一秒 的近10条评论(全部评论) | ||||
---|---|---|---|---|
坐标变换真神奇,差点就拿double存了
| ||||
把y当不下降做竟然有90分。。0 0
| ||||
回复 @cstdio :
坐标变换后会超 | ||||
试了一发最长上升子序列
| ||||
注意初始点是 (0, 0), LIS 中必须包含这个点!
| ||||
回复 @mikumikumi :
纳尼?坐标超10w了吗? | ||||
我累个大槽,说好的不用离散化也可以过呢?
| ||||
|
“你们搞的这个导弹啊,excited!”
Asm.Def通过数据链发送了算出的疑似目标位置,几分钟后,成群结队的巡航导弹从“无蛤”号头顶掠过,布满了天空。
“一共发射了多少导弹?”
“十亿美元。”斯科特·华莱士回答,“单价100万,现在天上有1000多枚。这玩意能自动搜索10个可疑点,找到目标就发动攻击。”
“什么?10个?我给了它10万个点!”
“这会让它的程序崩溃的。好在你还有时间手动输入路径。”
“多久?”
“零……还有一秒,他们又给续上了一秒。”
“我想静静,别问我静静是谁。”
Asm.Def在第一象限内找到了n个可疑点。他需要为导弹规划路径。
如图所示,导弹一开始在(0,0)。它只能朝着一定的方向——即严格夹在图中两条射线间的方向(白色部分)前进。注意,它不能沿着这两条射线前进,当然也不能停在原地。
当导弹到达某个可疑点后,它仍然只能朝着该范围内的方向前进,如图。
Asm.Def想要让导弹经过尽可能多的可疑点。他需要在一秒钟内知道,最多能经过多少个可疑点。
第1行1个整数n。
第2行4个整数a b c d:代表两条射线的斜率分别是a/b和c/d。保证0<=a,b,c,d<=10^5,a/b<c/d(即a/b是靠下的那条射线),a/b≠0/0,c/d≠0/0.
接下来n行,每行2个整数xi,yi(1<=xi,yi<=10^5),代表i号可疑点的坐标。
一行一个整数,即最多能经过几个可疑点。
15 1 3 2 1 3 1 6 2 4 2 2 5 4 5 6 6 3 4 1 6 2 1 7 4 9 3 5 3 1 3 15 5 12 4
4
这是最佳路径。注意,导弹不能前往位于射线上的点。
对于30%的数据,n<=1000,a=0,b=1,c=1,d=0。
对于60%的数据,n<=1000。
对于100%的数据,n<=10^5。
“Asm.Def战记之太平洋”杯