엔비스카의 영혼

면접 대비

시간 제한2초메모리 제한512 MB

요약
앞에 N명 있고 점프 크기 a와 b가 주어질 때, 이동과 기다림으로 줄 맨 앞에 도달하는 최소 시간을 구합니다.
난이도

보통10점 중 4점

유형
수학, 그리디, 구현
정답자
아직 제출이 없습니다

문제

한길이는 수습 마법사이며, 마법사의 영혼을 받기 위해 줄을 서 있다. 한길이는 강력한 힘을 얻으려고 인성을 버렸다. 그리고 가장 강력한 엔비스카의 영혼을 받으려고 새치기를 하기로 결심했다.

한길이 앞에 NN명의 사람이 줄 서 있다. 1초가 지날 때마다 줄의 맨 앞 사람은 영혼을 받고 집으로 간다. 그리고 1초마다 한길이는 다음 행동 중 하나를 할 수 있다.

  • 기다리기
  • aa명 앞으로 가기 (앞에 최소 aa명 있을 때)
  • bb명 앞으로 가기 (앞에 최소 bb명 있을 때)

단, 한길이는 새치기에 도가 텄기 때문에 모든 행동을 0초 만에 할 수 있다.

예를 들어 N=5N = 5, a=1a = 1, b=2b = 2라고 하자. 5초 동안 기다리기만 하면 줄의 맨 앞 사람이 나가므로 줄의 맨 앞에 서기까지 5초가 걸린다. 하지만 맨 앞 한 명이 집에 가고 한길이가 2명 앞으로 새치기하고, 그다음 한 명이 집에 가고 1명 앞으로 새치기하면 2초 만에 줄의 맨 앞에 선다. 유의할 점은, 1초에 맨 앞 한 명이 가고 2명 앞으로 새치기하고 맨 앞 한 명이 가면 1명이 남는다. 이때 2명 앞으로 새치기는 불가능하다.

한길이가 줄의 맨 앞에 서려면 최소 몇 초가 걸리는가?

입력

첫째 줄에 NN, aa, bb가 주어진다. (0≤N≤1,000,0000 \le N \le 1{,}000{,}000, 0≤a,b≤N0 \le a, b \le N)

출력

한길이가 맨 앞에 서는 데 걸리는 최소 시간을 출력한다.

예제1

  1. 예제 1

    입력
    5 1 2
    
    예상 출력
    2