英语题翻译25

Lifting the Stone | JXNUOJ

There are many secret openings in the floor which are covered by a big heavy stone. When the stone is lifted up, a special mechanism detects this and activates poisoned arrows that are shot near the opening. The only possibility is to lift the stone very slowly and carefully. The ACM team must connect a rope to the stone and then lift it using a pulley. Moreover, the stone must be lifted all at once; no side can rise before another. So it is very important to find the centre of gravity and connect the rope exactly to that point. The stone has a polygonal shape and its height is the same throughout the whole polygonal area. Your task is to find the centre of gravity for the given polygon.

The input consists of T test cases. The number of them (T) is given on the first line of the input file. Each test case begins with a line containing a single integer N (3 <= N <= 1000000) indicating the number of points that form the polygon. This is followed by N lines, each containing two integers Xi and Yi (|Xi|, |Yi| <= 20000). These numbers are the coordinates of the i-th point. When we connect the points in the given order, we get a polygon. You may assume that the edges never touch each other (except the neighboring ones) and that they never cross. The area of the polygon is never zero, i.e. it cannot collapse into a single line.

Print exactly one line for each test case. The line should contain exactly two numbers separated by one space. These numbers are the coordinates of the centre of gravity. Round the coordinates to the nearest number with exactly two digits after the decimal point (0.005 rounds up to 0.01). Note that the centre of gravity may be outside the polygon, if its shape is not convex. If there is such a case in the input data, print the centre anyway.

翻译:

地板上有许多秘密开口,上面覆盖着一块大石头。当石头被抬起时,一种特殊的机制会检测到这一点,并激活在开口附近射出的毒箭。唯一的可能是非常缓慢而小心地抬起石头。 ACM 团队必须将绳索连接到石头上,然后使用滑轮将其抬起。此外,石头必须一次全部搬起;没有一方能够先人一步。所以找到重心并将绳索准确地连接到那个点是非常重要的。石头呈多边形,整个多边形区域的高度相同。你的任务是找到给定多边形的重心。

输入由 T 个测试用例组成。数量(T)在输入文件的第一行给出。每个测试用例都以包含单个整数 N (3 <= N <= 1000000) 的行开始,表示形成多边形的点数。接下来是 N 行,每行包含两个整数 Xi 和 Yi (|Xi|, |Yi| <= 20000)。这些数字是第 i 个点的坐标。当我们按照给定的顺序连接点时,我们得到一个多边形。您可以假设边缘从不相互接触(相邻的除外)并且它们从不交叉。多边形的面积永远不会为零,即它不能折叠成一条线。

每个测试用例打印一行。该行应包含两个数字,由一个空格分隔。这些数字是重心的坐标。将坐标四舍五入到最接近的数字,小数点后正好有两位数(0.005 向上舍入到 0.01)。请注意,如果多边形的形状不是凸面,则重心可能在多边形之外。如果输入数据中存在这种情况,无论如何都要打印中心。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值