CF995C.Leaving the Bar
提高+/省选-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
For a vector v=(x,y), define ∣v∣=x2+y2.
Allen had a bit too much to drink at the bar, which is at the origin. There are n vectors v1,v2,⋯,vn. Allen will make n moves. As Allen's sense of direction is impaired, during the i-th move he will either move in the direction vi or −vi. In other words, if his position is currently p=(x,y), he will either move to p+vi or p−vi.
Allen doesn't want to wander too far from home (which happens to also be the bar). You need to help him figure out a sequence of moves (a sequence of signs for the vectors) such that his final position p satisfies ∣p∣≤1.5⋅106 so that he can stay safe.
对于向量 v=(x,y),定义其模长为 ∣v∣=x2+y2。
Allen 在位于原点的酒吧喝得有点多。现有 n 个向量 v1,v2,⋯,vn。Allen 将进行 n 次移动。由于他的方向感受损,在第 i 次移动时,他将沿 vi 或 −vi 方向移动。换言之,若他当前的位置为 p=(x,y),则他将移动至 p+vi 或 p−vi。
Allen 不希望离家(恰好也在酒吧处)太远。你需要帮他确定一个移动序列(即为各向量选定正负号),使得其最终位置 p 满足 ∣p∣≤1.5⋅106,从而保证安全。
输入格式
The first line contains a single integer n (1≤n≤105) — the number of moves.
Each of the following lines contains two space-separated integers xi and yi, meaning that vi=(xi,yi). We have that ∣vi∣≤106 for all i.
第一行包含一个整数 n(1≤n≤105)—— 表示移动次数。
接下来的每一行包含两个以空格分隔的整数 xi 和 yi,表示向量 vi=(xi,yi)。对所有 i,满足 ∣vi∣≤106。
输出格式
Output a single line containing n integers c1,c2,⋯,cn, each of which is either 1 or −1. Your solution is correct if the value of p=∑i=1ncivi, satisfies ∣p∣≤1.5⋅106.
It can be shown that a solution always exists under the given constraints.
输出一行,包含 n 个整数 c1,c2,⋯,cn,每个数为 1 或 −1。若向量 p=∑i=1ncivi 的模长满足 ∣p∣≤1.5⋅106,则你的解是正确的。
可以证明:在给定约束条件下,解总是存在的。
输入输出样例
输入#1
3 999999 0 0 999999 999999 0
输出#1
1 1 -1
输入#2
1 -824590 246031
输出#2
1
输入#3
8 -67761 603277 640586 -396671 46147 -122580 569609 -2112 400 914208 131792 309779 -850150 -486293 5272 721899
输出#3
1 1 1 1 1 1 1 -1
输入解题思路,AI测评打分。不知道怎么写?