【CODEFORCES】 A. Pashmak and Garden
2494 단어 모방하다codeforces
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
Pashmak has fallen in love with an attractive girl called Parmida since one year ago...
Today, Pashmak set up a meeting with his partner in a romantic garden. Unfortunately, Pashmak has forgotten where the garden is. But he remembers that the garden looks like a square with sides parallel to the coordinate axes. He also remembers that there is exactly one tree on each vertex of the square. Now, Pashmak knows the position of only two of the trees. Help him to find the position of two remaining ones.
Input
The first line contains four space-separated x1, y1, x2, y2 ( - 100 ≤ x1, y1, x2, y2 ≤ 100) integers, where x1 and y1 are coordinates of the first tree and x2 and y2 are coordinates of the second tree. It's guaranteed that the given points are distinct.
Output
If there is no solution to the problem, print -1. Otherwise print four space-separated integers x3, y3, x4, y4 that correspond to the coordinates of the two other trees. If there are several solutions you can output any of them.
Note that x3, y3, x4, y4 must be in the range ( - 1000 ≤ x3, y3, x4, y4 ≤ 1000).
Sample test(s)
input
0 0 0 1
output
1 0 1 1
input
0 0 1 1
output
0 1 1 0
input
0 0 1 2
output
-1
문제풀이: 물은 자신감이 넘친다. 서로 인접한 두 점의 거리가 1이 되지 않을 수도 있으니 주의하면 된다.
#include<iostream>
using namespace std;
int x[2],y[2],t,p;
int main()
{
cin >>x[0]>>y[0]>>x[1]>>y[1];
int t=x[1]-x[0],p=y[1]-y[0];
if ((t!=0 && p!=0 && t*t!=p*p)||(t==0 && p==0))
{
cout<<-1<<endl;
return 0;
}
if (t==0 && p!=0)
{
cout <<x[0]+p<<" "<<y[0]<<" "<<x[1]+p<<" "<<y[1];
return 0;
}
if (t!=0 && p==0)
{
cout <<x[0]<<" "<<y[0]+t<<" "<<x[1]<<" "<<y[1]+t;
return 0;
}
cout <<x[0]+t<<" "<<y[0]<<" "<<x[1]-t<<" "<<y[1];
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Codeforces Round #510 (Div. 2) D. Petya and Array 좌압과 세그먼트 트리문제는 바꿔 말하면, 구간 $[l, r)$의 부분합이 $t$ 미만의 부분합이 되는, $l,r$의 수를 요구하고 싶다. 즉, $a_0$에서 있는 $a_i$까지의 합을 index로, 출현 횟수를 값으로 하는 세그먼트 트...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.