NC215073. 战争尾声
描述
“当攻占主城成功的信号弹与敌人的子弹同时射出,信号弹照亮了民众对于和平的渴望与对于未来美好生活的所有畅想,而子弹却击碎了她下去的信念与存在的全部意义。”
“烟花易冷,少佐的生命也是如此,在温暖的光辉中照亮了她那唯有死亡同行的路,而这温柔的光芒也在这满是硝烟的空气中迅速降温、下落,熄灭,直至落回冰冷坚硬的地面上。”
——前言(略过不影响答题)
战火纷飞了二十多年的大陆终于看到了和平的曙光,
在昂榭尔王国、阿斯特赖亚国等几个大国的牵头下,大陆上的所有国家决定握手言和,停战修养。
作为战争结束的标志,需要所有国家签订一个停战协议。
一份完整的停战协议已经由我们的自动手记人偶 薇尔莉特 起草好了,
现在需要各个国家同时在同一个地点签订该停战协议。
将整块大陆放在平面直角坐标系中,则大陆的西南角的坐标为 ,东北角的坐标为。
现将给出 个国家的坐标,第 个国家的坐标为
PS:相等:两段距离差值的绝对值小于 。
如果大陆上找不到该点,请输出 War is cruel.
输入描述
第一行,一个正整数 ,表示有 个国家将会签订停战协议
接下来 n 行,每行两个正整数,第 行表示第 个国家的坐标 ,以空格隔开。
输出描述
第一行,输出满足条件的点的坐标,以空格隔开
如果满足条件的点不止一个,请优先输出横坐标 较小的点,如果横坐标 相等,优先输出纵坐标 较小的点。
如果满足条件的点不存在,请输出 War is cruel.PS:答案坐标均为整数
示例1
输入:
2 1 2 2 1
输出:
1 1
示例2
输入:
5 3 1 2 3 3 5 4 4 6 5
输出:
War is cruel.
C(clang11) 解法, 执行用时: 5ms, 内存消耗: 372K, 提交时间: 2021-01-23 21:09:54
#include <stdio.h> #include <stdlib.h> #include <math.h> int main() { int n,flag=0; scanf("%d",&n); int i,j,k; int x[201],y[201]; for(i=0;i<n;i++) scanf("%d%d",&x[i],&y[i]); for(j=1;j<=200;j++) { for(k=1;k<200;k++) { for(i=0;i<n-1;i++) { if((x[i]-j)*(x[i]-j)+(y[i]-k)*(y[i]-k)!=(x[i+1]-j)*(x[i+1]-j)+(y[i+1]-k)*(y[i+1]-k)) break; } if(i==n-1&&flag==0) printf("%d %d",j,k),flag=2; } } if(flag==0) printf("War is cruel."); return 0; }
Python3 解法, 执行用时: 153ms, 内存消耗: 7056K, 提交时间: 2021-11-28 15:48:02
import sys import math n=int(input()) A= [[0]*2 for i in range(n)] for j in range(n): A[j][0],A[j][1]=map(int,input().split()) for x in range(1,201): for y in range(1,201): j=1 d1=math.sqrt((x-A[0][0])**2+(y-A[0][1])**2) while abs(d1-math.sqrt((x-A[j][0])**2+(y-A[j][1])**2))<=0.0001: if j==n-1: print(x,y) sys.exit() j+=1 print("War is cruel.")
C++(clang++11) 解法, 执行用时: 9ms, 内存消耗: 388K, 提交时间: 2021-01-22 18:48:29
#include<stdio.h> #include<string.h> typedef long long ll; int x[205],y[205]; int main() { int n,len; scanf("%d",&n); for(int i=1;i<=n;++i) scanf("%d%d",&x[i],&y[i]); for(int i=1,j,k;i<=200;++i) for(j=1;j<=200;++j) { k=2; len=(i-x[1])*(i-x[1])+(j-y[1])*(j-y[1]); while((i-x[k])*(i-x[k])+(j-y[k])*(j-y[k])==len&&k<=n) k+=1; if(k>n) { printf("%d %d\n",i,j); return 0; } } puts("War is cruel."); return 0; }