[NCT058C2]简单题
题号:NC234971
时间限制:C/C++/Rust/Pascal 4秒,其他语言8秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld

题目描述

小 C 现在正在玩一款战争策略游戏,在这个游戏中,玩家一开始拥有 n 个堡垒,游戏目标是占领另外 n 个堡垒。

因为任意一个堡垒都仅有两种状态,正在修建或慢慢损耗,所以每个堡垒都有一个与时间相关的战斗力 w,满足关系式 ,其中 k 为战斗力变化率,t 为当前时间,b 为初始战斗力。

在这个游戏中,堡垒 i 能打败堡垒 j 当且仅当 ,并且当堡垒 i 打败堡垒 j 以后,i 中的驻军可以转移到 j,同时玩家失去对 i 的所有权并获得 j 的所有权。

在  时,玩家拥有 n 个堡垒。给定所有的 2n 个堡垒的初始战斗力和战斗力变化率,玩家可以在任意整数时刻进行任意次操作。请你求出小 C 将 n 个目标堡垒全部占领的最短用时。

如果无论如何都没法占领 n 个目标堡垒,则输出 "Can't win!"(不含引号).

PS : 同一时间同一个城堡内不能有多只驻军。本题与 C1 仅有城堡内驻军数量限制的区别。

输入描述:

第一行一个正整数 n.

接下来 n 行,每行两个整数 k_i,b_i,表示你现在拥有的堡垒的参数。

接下来 n 行,每行两个整数 ,表示目标堡垒的参数。

输出描述:

一个非负整数表示答案,或一个字符串 "Can't win!".
示例1

输入

复制
10
3 -208
-3 845
3 -808
-8 466
2 -727
10 308
0 260
8 368
1 -887
0 426
2 298
-1 11
0 132
2 -412
-1 578
4 -613
9 -119
-2 716
2 -266
-6 307

输出

复制
305

备注:

数据保证