도면
면접 대비시간 제한2초메모리 제한1024 MB
A0에 고정된 길이가 정해진 막대들의 끝점이 An에 닿을 수 있는지 판단합니다. 가능하면 모든 관절의 좌표를 출력합니다.
문제
평행 차원에서 온 또 다른 적대적인 생명체를 피해 도망친 고든 프리먼은 젠 차원에서 가져온 결정을 연구하던 실험실에 숨었다. 위험이 없다는 것을 확인한 프리먼은 주위를 둘러보다가 복잡한 도면을 초정밀로 그리기 위한 흥미로운 장비를 발견했다. 그러나 이 장비는 일반적인 도면을 그리도록 설계된 것이 아니어서, 구조상 그릴 수 없는 도면도 있다.
실험실 컴퓨터에서 프리먼은 연방 연구 센터의 모든 방 도면을 찾았다. 이 도면을 출력해 두면 생존 확률이 크게 높아졌을 것이다. 프리먼이 무엇을 하려 했는지는 쉽게 짐작할 수 있다.
도면 장치는 다음과 같이 동작한다. 도면 평면의 점 에 힌지로 차례로 연결된 개의 금속 막대로 이루어진 "팔"이 고정되어 있다. 첫 번째 막대(점 에 붙은 막대)의 길이를 , 다음 막대의 길이를 라 하고, 마지막 막대의 길이 까지 같은 방식으로 정한다. 막대 와 이 만나는 힌지 점을 , 마지막 막대의 끝을 이라 한다. 에는 점을 찍는 도구가 달려 있다. 모든 에 대해 가 성립하면, 제어 장치는 힌지 관절을 도면 평면의 위치에 놓을 수 있다.
프리먼은 도면을 그리기 위해 이 장치로 필요한 모든 점을 그릴 수 있는지 알아내야 한다. 또한 각 점마다 모든 의 좌표도 알아야 한다. 그를 도와주자.
입력
첫째 줄에는 정수 , , , ()이 주어진다. 이는 첫 번째 막대가 붙은 점 의 좌표와 그려야 할 점 의 좌표이다.
둘째 줄에는 장치의 막대 개수 정수 ()이 주어진다. 셋째 줄에는 막대의 길이를 나타내는 정수 개 ()가 주어진다.
출력
첫째 줄에 점 을 그릴 수 있으면 YES, 그렇지 않으면 NO를 출력한다. 그릴 수 있다면 다음 개의 줄에 가 0부터 까지인 의 좌표를 출력한다. 출력한 점 와 사이의 거리가 와 을 넘게 차이 나지 않으면 정답으로 인정한다.