페이지를 불러오는 중…
해결한 사람
1
명
정답률
100.00
%
시간 제한
5
ms
메모리 제한
1024
MB
입자 충돌기는 제작하기 어렵고 실험을 수행하는 데 많은 비용이 든다. 실제 실험을 수행하기 전에 먼저 아이디어를 시험할 수 있도록 시뮬레이션을 하는 편이 낫다. 이 문제를 위한 매우 간단한 시뮬레이터를 작성해야 한다.
이 시스템에는 입자가 단 세 개뿐이며, 모든 입자는 원으로 모델링할 수 있도록 무한한 평면에 한정되어 있다. 각 입자의 위치는 중심의 좌표와 좌표로만 지정된다(). 세 입자는 모두 반지름이 로 같으며, 처음에는 정지해 있다.
실험이 시작될 때 입자 이 이동할 방향을 나타내는 벡터 가 주어진다. 입자 이 입자 과 충돌하면, 입자 은 접촉점에서의 접선에 수직이며 입자 에서 멀어지는 방향으로 이동하기 시작한다. 입자 은 존재하지 않게 되고 복사 에너지로 변환된다. 다른 입자와 충돌하지 않는 움직이는 입자는 무한히 계속 이동한다.
시뮬레이터가 식별해야 하는 가능한 시나리오는 다음과 같다.
입자 이 입자 과 충돌하고, 이어서 그 입자가 입자 과 충돌한다.
입자 이 입자 과 충돌하고, 이어서 그 입자가 입자 과 충돌한다.
입자 이 입자 과 충돌하고, 그 입자는 무한히 이동한다.
입자 이 입자 과 충돌하고, 그 입자는 무한히 이동한다.
입자 이 무한히 이동한다.
입력은 네 줄로 이루어진다. 처음 세 줄에는 각각 두 정수 와 가 주어지며(), 순서대로 입자 , , 을 나타낸다. 네 번째 줄에는 세 정수 , , 이 주어진다(, ).
처음에 어떤 두 입자도 서로 접하거나 겹치지 않으며, 입자 과 의 중심 사이 거리는 보다 크다고 가정해도 된다.
위에서 설명한 시나리오를 식별하는 번호(--)를 나타내는 정수 하나를 출력한다.
계산에 주의를 기울여야 하지만, 초기 벡터 를 어느 방향으로든 한 도 회전해도 결과가 바뀌지 않음이 보장된다.
0 0
50 45
91 50
42 50 10
1
0 0
50 50
141 50
41 50 10
3
0 0
50 50
131 50
100 50 10
4
Rocky Mountain Regional Programming Contest 2017
로그인 상태를 확인하는 중입니다.