영웅질럿 길뚫기

펭가루·2021년 8월 26일
0

내가 만든 문제들

목록 보기
3/17

영웅질럿 길뚫기는 최신유행 유즈맵이다. 영웅질럿 N마리 (N은 10000보다 작거나 같은 자연수)가 언덕을 가로로 길게 늘어서서 막고있다. 영웅질럿 한 마리의 가로 길이는 1이다. 게임은 다음과 같이 진행된다:

  1. 영웅질럿 N마리의 초기 실드, 체력 정보가 주어진다. 영웅 유닛답게 실드,체력 모두 최대 오천만이며, 실드가 모두 소진돼야 체력이 소진된다. 체력이 0이 된 질럿은 증발하며, 그 자리에는 길이 1짜리 빈 칸이 생긴다.

  2. 플레이어는 최소 K (K는 N보다 작거나 같은 자연수)의 통로를 만들어야 한다. 즉 연속해 있는 영웅질럿을 최소 K마리 죽여야 한다.

  3. 플레이어는 다음 3가지 중 하나만 게임 동안 사용이 가능하다:

    A. 싸이오닉스톰. 한 번에 200원. 실드든 체력이든 2씩 피해를 준다. 언덕 전체에 적용된다.
    B. 벌처 소환. 한 번에 150원, 총 N마리의 벌처가 소환된다. 소환된 벌처는 질럿 앞에 일직선으로 배치되며, 자신의 앞에 있는 적에게만 공격한다. 실드는 2, 체력은 1씩 피해를 주며, 공격한 벌처는 사라진다.
    C. 저글링 소환. 한 번에 125원, 총 N마리의 저글링이 소환된다. 소환된 저글링은 질럿 앞에 일직선으로 배치되며, 자신의 앞에 있는 적에게만 공격한다. 실드든 체력이든 1씩 피해를 주며, 공격한 저글링은 사라진다. 단, 자신의 앞에 공격할 질럿이 없는 경우, 자신의 바로 오른쪽에 질럿이 있다면 대신 공격할 수 있다.

N마리 질럿의 실드, 체력 정보 배열, 필요한 통로의 최소 길이 K가 입력으로 주어진다. 싸이오닉스톰, 벌처 소환, 저글링 소환 중, 가장 저렴한 가격으로 통로를 만들 수 있는 전략을 답하시오 (시간제한 1초)

*참고한 문제: https://programmers.co.kr/learn/courses/30/lessons/64062
*문제의 오류를 찾은 사람: khj2830
*회고: 잘 만들었다. 나의 생각과 다른 풀이가 존재했다.

profile
취미로 알고리즘 문제 만드는 사람

0개의 댓글