만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

비행기

시간 제한1초메모리 제한1024 MB

요약
원형 경계 위의 N개 공항을 두 비행기가 번갈아 모두 방문할 때, 각 비행기의 비행 거리와 만남 및 교차 횟수를 구합니다.
난이도

보통10점 중 4점

유형
시뮬레이션, 구현
정답자
아직 제출이 없습니다

문제

올림피아 국가의 국경은 원 모양이다. 이 원 위에 NN개의 공항이 서로 같은 간격으로 놓여 있다. 원을 따라 이웃한 두 공항 사이의 거리는 dd이다 (dd는 양의 정수이다). 국경을 순찰하는 비행기는 두 대이며, 이를 비행기 1과 비행기 2라고 부른다. 각 비행기는 다음 규칙에 따라 NN개의 공항을 모두 방문하는 경로를 한 번 비행한다.

  • 비행기 1은 한 공항에서 이륙해 시계 방향으로 국경을 따라 날아간다. 착륙하지 않고 ap1ap_1개의 공항 위를 지난 뒤, 아직 착륙한 적 없는 첫 번째 공항에 착륙한다. 그다음 같은 규칙으로 다시 이륙하며, NN개의 공항을 모두 방문할 때까지 이를 반복한다.
  • 비행기 2는 한 공항에서 이륙해 반시계 방향으로 국경을 따라 날아간다. 착륙하지 않고 ap2ap_2개의 공항 위를 지난 뒤, 아직 착륙한 적 없는 첫 번째 공항에 착륙한다. 그다음 같은 규칙으로 다시 이륙하며, NN개의 공항을 모두 방문할 때까지 이를 반복한다.
  • 처음에는 두 비행기가 같은 공항에 있고, 거기서 첫 비행이 시작된다. 이 공항은 두 비행기가 이미 방문한 것으로 본다. 마지막에는 각 비행기가 마지막으로 착륙한 공항에 머문다.
  • 비행은 번갈아 진행된다. 비행기 1이 먼저 착륙할 때까지 날아가고, 이어서 비행기 2가 이륙한다. 비행기 2가 착륙한 뒤 다시 비행기 1이 이륙하며, 두 비행기가 모두 NN개의 공항을 방문할 때까지 이어진다.

각 비행기가 NN개의 공항을 모두 방문할 때까지 비행한 거리를 구한다. 두 비행기가 같은 시각에 같은 공항에 있게 되는 경우를 만남이라고 하며, 처음 상태도 만남으로 센다. 한 비행기가 다른 비행기가 착륙해 있는 공항 위를 지나가는 경우를 엇갈림이라고 한다. 공항에서 만나는 경우는 엇갈림으로 세지 않는다.

입력

한 줄에 정수 NN, dd, ap1ap_1, ap2ap_2가 주어진다.

출력

한 줄에 공백으로 구분하여 정수 네 개를 출력한다. 차례대로 비행기 1이 비행한 거리, 비행기 2가 비행한 거리, 만남의 횟수, 엇갈림의 횟수이다.

제한

  • 2≤N≤10002 \le N \le 1000
  • 1≤d≤1001 \le d \le 100
  • 0≤ap1<N0 \le ap_1 < N
  • 0≤ap2<N0 \le ap_2 < N

힌트

테스트 케이스마다 다음과 같이 점수가 주어진다. 비행기 1이 비행한 거리가 맞으면 2점, 비행기 2가 비행한 거리가 맞으면 2점, 만남의 횟수가 맞으면 3점, 엇갈림의 횟수가 맞으면 3점이다.

예제1

  1. 예제 1

    입력
    4 1 2 3
    
    예상 출력
    9 15 4 3