Logo
(追記) (追記ここまで)

34005번 - 초보자로 살아남기

시간 제한메모리 제한제출정답맞힌 사람정답 비율
3 초 1024 MB44332976.316%

문제

pichulia 의 레벨 87짜리 초보자 캐릭터의 모습

pichulia 는 메이플스토리2 에서 초보자로 레벨 87까지 찍은 유저이다. 초보자로 모든 던전의 보스를 잡는다는 목표를 세웠던 pichulia 였지만, 어느 순간부터는 보스를 잡지 못하게 되었다. 상위 레벨의 던전에는 보통 10분 안에 보스를 잡아야 하는 제약사항이 있는데, 초보자의 데미지 수치로는 절대 잡을 수 없는 보스가 존재할 수 있던 것이다. 게임의 이러한 구조적인 불합리함을 느낀 pichulia 는 이 상황을 고발하기로 했다.

초보자가 쓸 수 있는 공격 스킬은 아래와 같이 총 4가지이다.

스킬 데미지 SP 후 딜레이(초) 쿨타임 (초)
기본 공격 100 0 1 1
해머링 $A$ -7 1 1
스트라이크 $B$ 10 2 3
박치기 $C$ 10 2 8

각 항목에 대한 설명은 다음과 같다.

  • 데미지: 스킬 시전 즉시 데미지 수치만큼 몬스터의 체력을 감소시킨다.
  • SP: 해당 스킬을 쓰는 데 필요한 자원. 양수이면 소모를, 음수이면 회복한다. 현재 SP가 소모량 미만일 경우 스킬을 쓸 수 없다.
  • 후 딜레이: 스킬 시전 후 경직되는 시간. 이 시간 동안 어떤 스킬도 쓸 수 없다. 스킬을 사용한 시점부터 시간이 계산된다.
  • 쿨타임: 같은 스킬을 쓰기 위해 필요한 대기 시간. 이 시간 동안 같은 스킬을 다시 쓸 수 없다. 스킬을 사용한 시점부터 시간이 계산된다.

예를 들어, 기본 공격해머링 은 후 딜레이와 쿨타임이 같으므로 1초마다 한 번씩 계속해서 사용할 수 있다. 스트라이크 를 쓰면 1초 뒤에는 아무런 작업을 하지 못하고, 2초가 지난 뒤부터 스트라이크 를 제외한 다른 스킬을 쓸 수 있다. 3초 뒤부터는 스트라이크 를 쓸 수 있다.

SP는 1초에 1씩 회복되며. 최대 100 을 넘어가지 않는다. 또한 SP가 회복된 뒤에 스킬이 시전된다. 초기 SP는 100 이며, 1초부터 스킬을 사용할 수 있다.

각 스킬의 데미지가 주어졌을 때, 초기 체력이 $P$ 인 몬스터의 체력을 0 이하로 만들어 쓰러트리기 위한 시간의 최솟값을 구해보자.

입력

첫 번째 줄에는 테스트 케이스의 개수 $T$ 가 입력으로 주어진다. (1ドル \le T \le 5$)

이후 $T$ 줄에 걸쳐 네 개의 정수 $A$ $B$ $C$ $P$ 가 공백으로 구분되어 주어진다. (50ドル \lt A \lt 100;$ 200ドル \lt B \lt 400;$ 400ドル \lt C \lt 800;$ 400ドル \lt P \lt 10^6$)

출력

테스트케이스마다 한 줄에 하나씩 $T$ 줄에 걸쳐 몬스터를 쓰러트리기 위한 시간의 최솟값을 출력한다. 만약 600ドル$초가 지나도 몬스터에게 $P$ 이상의 데미지를 주지 못하는 경우 -1 을 출력한다.

제한

예제 입력 1

5
51 201 799 999
51 201 401 74783
51 201 401 74784
91 201 401 2407
75 300 700 18375

예제 출력 1

3
600
-1
17
100

1번 테스트케이스의 경우 1초에 스트라이크, 3초에 박치기 를 사용하면 3초만에 보스를 잡을 수 있다. 2초 이하의 시간 동안 보스를 잡을 수 있는 방법이 없음을 증명할 수 있다.

4번 테스트케이스의 경우 1초와 9초 및 17초에 박치기 를, 3초와 6초, 11초 및 14초에 스트라이크 를, 5초와 8초, 13초와 16초에 기본 공격 을 사용하면 17초 동안 보스를 잡을 수 있다. 16초 이하의 시간 동안 보스를 잡을 수 있는 방법이 없음을 증명할 수 있다.

노트

출처

Contest > BOJ User Contest > 임스의 메이플컵 > 제2회 임스의 메이플컵 E번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /