Lunatic Mine

시간 제한2.953초메모리 제한589 MB

요약
제련, 합성, 마법 부여, 승급을 활용해 20,000번의 명령어 안에 도전 과제 10개를 모두 달성하는 인터랙티브 채광 게임을 설계합니다.
난이도

어려움10점 중 9점

유형
시뮬레이션, 완전 탐색, 구현, 확률
정답자
아직 제출이 없습니다

문제

이 문제는 비적응적 인터랙티브 문제입니다.


🌙 Lunatic Mine ⛏


달의 광산 한복판에서 돌을 캐면서 끝없는 도전 과제를 깨는 초특급 광산 시뮬레이터! 이건 그저 광(鑛)부의 꿈이 아닙니다! 당신은 이제 단단한 바위 속에서 반짝이는 돌을 캐며, 도전 과제 10개를 노리는 진정한 광(狂)부가 될 수 있습니다!

입구에서 곡괭이를 휘두르면, 지하 깊숙이 숨겨진 돌이 빛을 발합니다. 하지만 조심하세요, 이건 단순히 돌을 깨부수는 일이 아닙니다! 돌 속에 숨겨진 재치 있는(?) 사건들이 당신을 기다리고 있습니다. 어떤 돌은 돈을 주고, 어떤 돌은 강화석을 주고, 어떤 돌은… 글쎄, 아무것도 안 줍니다. 웃기지 않나요?

곡괭이 강화를 통해 우주 최강 채광 능력을 얻고 싶으신가요? 도전 과제 10개를 모두 달성해서 끝판왕이 되고 싶으신가요?

그렇다면 이 게임이야말로 당신을 위한 것입니다. 웃음과 헛수고가 가득한 광산 모험, 지금 바로 곡괭이를 들고 뛰어드세요!


- Lunatic Mine 광고


목차


🎮 제 1장. 게임 시스템 🎮

Lunatic Mine 게임에는 두 종류의 재화가 있습니다! 루나🌙와 강화석💎이죠! 루나는 이 게임에서 통용되는 화폐라고 보아도 무방합니다. 반면에 강화석은 여러분의 곡괭이⛏를 좀 더 강화하기 위해 필요한 재화입니다. 강화할 곡괭이가 어떻게 되어 있는지 한번 살펴보시죠! 편의상 263−12^{63} - 1의 값을 INF\text{INF}로 정의하겠습니다.

  • 곡괭이 능력치 ⛏

    • 마법 등급 🔮

      •  00 이상 44 이하의 정수로 표현됩니다.
        • 이 정수는 마법 등급을 의미합니다.
      • 마법 시스템[🪄][🔮]의 등급을 의미합니다.
      • 보통 마법 등급이 높으면 좋은 마법이 뜰 확률이 높습니다.
      • 마법 등급은 5가지로 일반, 레어, 에픽, 유니크, 레전드리 순으로 높은 등급입니다.
      • 각각 0번, 1번, 2번, 3번, 4번 마법 등급으로 부르기도 합니다.
    • 마법 🪄

      •  00 이상 1818 이하의 정수 11개와 −25-25 이상 4,0004\\,000 이하의 정수 11개로 표현됩니다.

        • 첫 번째 정수는 마법 아이디, 두 번째 정수는 마법의 세부 수치를 의미합니다.
      • 마법은 곡괭이의 각종 능력치를 좋게 만들어줍니다.

      • 한 곡괭이에는 3개의 마법이 부여되며 각각 0번, 1번, 2번 마법 슬롯이라 부릅니다.

      • 영향을 주는 능력치의 종류가 같은 마법끼리는 0번, 1번, 2번 마법 슬롯 순서대로 능력치를 바꾸기 때문에 같은 마법의 구성이더라도 순서가 다르면 최종 능력치가 다를 수 있습니다.

        • 다음과 같은 상황에서 2번 마법 슬롯은 고려하지 않는다고 가정합니다.
        • 0번 마법 슬롯은 AA 수치를 22만큼 올려주고, 1번 마법 슬롯이 AA 수치를 22배 올려준다면 최종 적용 수치는 (A+2)×2(A+2) \times 2입니다.
        • 0번 마법 슬롯은 AA 수치를 22배 올려주고, 1번 마법 슬롯이 AA 수치를 22만큼 올려준다면 최종 적용 수치는 A×2+2A \times 2 + 2입니다.
    • 제련 레벨 🔨

      •  00 이상 3030 이하의 정수로 표현됩니다.
        • 이 정수는 제련 레벨을 의미합니다.
      • 제련 시스템[🔨]의 레벨을 의미합니다.
      • 보통 제련 레벨이 높으면 곡괭이 능력치가 좋습니다.
    • 최종 레벨 ⚒️

      •  00 이상 3939 이하의 정수로 표현됩니다.
        • 이 정수는 최종 레벨을 의미합니다.
      • 최종 레벨은 제련 레벨에서 마법에 의한 레벨까지 추가한 레벨입니다.
      • 채광 시 마법 시스템[🪄][🔮]에 의해 증가할 수 있는 능력치입니다.
    • 최소 루나 🌙

      •  11 이상 INF\text{INF} 이하의 정수로 표현됩니다.
        • 이 정수는 최소 루나를 의미합니다.
      • 채광 시스템[⛏]에서 루나를 최소로 얼마나 얻을 수 있는지에 기여합니다.
      • 제련 시스템[🔨]에서 제공하는 능력치입니다.
      • 축복 시스템[🙏]에서 제공하는 능력치입니다.
      • 채광 시 마법 시스템[🪄][🔮]에 의해 증가할 수 있는 능력치입니다.
    • 최대 루나 🌕

      •  100100 이상 INF\text{INF} 이하의 정수로 표현됩니다.
        • 이 정수는 최대 루나를 의미합니다.
      • 채광 시스템[⛏]에서 루나를 최대로 얼마나 얻을 수 있는지에 기여합니다.
      • 제련 시스템[🔨]에서 제공하는 능력치입니다.
      • 축복 시스템[🙏]에서 제공하는 능력치입니다.
      • 채광 시 마법 시스템[🪄][🔮]에 의해 증가할 수 있는 능력치입니다.
    • 달빛 ✨

      •  00 이상 INF\text{INF} 이하의 정수로 표현됩니다.
        • 이 정수는 달빛을 의미합니다.
      • 채광 시스템[⛏]에서 루나를 얼마나 얻을 수 있는지에 기여합니다.
      • 제련 시스템[🔨]에서 제공하는 능력치입니다.
      • 축복 시스템[🙏]에서 제공하는 능력치입니다.
      • 채광 시 마법 시스템[🪄][🔮]에 의해 증가할 수 있는 능력치입니다.
    • 배율 🔥

      •  100100 이상 INF\text{INF} 이하의 정수로 표현됩니다.
        • 이 정수는 배율을 의미합니다.
      • 채광 시스템[⛏]에서 루나를 얼마나 얻을 수 있는지에 기여합니다.
      • 축복 시스템[🙏]에서 제공하는 능력치입니다.
      • 채광 시 마법 시스템[🪄][🔮]에 의해 증가할 수 있는 능력치입니다.
    • 강화석 드랍률 💎

      • 길이가 55인 정수형 배열로 표현됩니다.

        • 각 원소는 00 이상 INF\text{INF} 이하의 정수입니다.

          •  00번째 원소는 일반 강화석 드랍률을 의미합니다.
          •  11번째 원소는 레어 강화석 드랍률을 의미합니다.
          •  22번째 원소는 에픽 강화석 드랍률을 의미합니다.
          •  33번째 원소는 유니크 강화석 드랍률을 의미합니다.
          •  44번째 원소는 레전드리 강화석 드랍률을 의미합니다.
        • 이 정수형 배열은 강화석 드랍률을 의미합니다.

      • 채광 시스템[⛏]에서 강화석을 얻을 수 있는 확률에 기여합니다.

      • 제련 시스템[🔨]에서 제공하는 능력치입니다.

      • 축복 시스템[🙏]에서 제공하는 능력치입니다.

      • 채광 시 마법 시스템[🪄][🔮]에 의해 증가할 수 있는 능력치입니다.

    • 행운 🍀

      •  11 이상 1616 이하의 정수로 표현됩니다.
        • 이 정수는 행운을 의미합니다.
      • 채광 시스템[⛏]에서 강화석을 얼마나 얻을 수 있는지에 기여합니다.
      • 채광 시 마법 시스템[🪄][🔮]에 의해 증가할 수 있는 능력치입니다.
    • 할인 🆓

      •  2525 이상 100100 이하의 정수로 표현됩니다.
        • 이 정수는 할인을 의미합니다.
      • 제련 시스템[🔨]에서 제련 비용 감소에 기여합니다.
      • 마법 시스템[🪄][🔮]에 의해 감소할 수 있는 능력치입니다.

여러분은 강화한 곡괭이로 채광을 할 수 있습니다. 채광하면 곡괭이 강화 상태에 따라서 루나와 강화석을 얻을 수 있습니다. 채광으로 얻은 재화로 곡괭이 강화에 다시 투자해 지속적으로 곡괭이 능력치를 올리는 것이 가능하죠. 곡괭이로 가능한 행동은 총 6가지입니다. 여러분은 명령어를 통해 아래 행동을 취할 수 있습니다.

  • 채광 (mine)

    • 여러분이 가장 많이 하게 될 행동입니다.

    • 해당 행동으로, 장착한 곡괭이의 능력에 따라 루나와 강화석을 얻을 수 있습니다.
  • 장착 (equip)

    • 이 게임에서는 곡괭이가 세 개입니다. 곡괭이가 세 개! 그 세 개의 곡괭이 중 원하는 곡괭이를 장착할 수 있는 명령어입니다.
    • 곡괭이는 0번, 1번, 2번 곡괭이가 있습니다.
  • 제련 (smelt)

    • 루나를 소모하여, 장착한 곡괭이의 제련 레벨을 올릴 수 있습니다.
  • 합성 (craft)

    • 루나와 강화석을 소모하여, 더 좋은 강화석을 제작할 수 있습니다.
  • 마법 승급 (rank_up)

    • 강화석을 소모하여, 장착한 곡괭이의 마법 등급을 올릴 수 있습니다.
  • 마법 부여 (enchant)

    • 루나를 소모하여, 장착한 곡괭이에 마법을 부여할 수 있습니다.

좋습니다. 그러면 시스템 흐름을 요약해 봅시다.

  • 게임 흐름

    • 채광을 통해 루나와 강화석을 얻습니다.
    • 합성을 통해 더 좋은 강화석을 얻습니다.
    • 제련, 마법 승급, 마법 부여를 통해 곡괭이를 강화합니다.

이제 세부적인 사항에 대해서 살펴봅시다.


👜 제 2장. 랜덤 시스템과 인벤토리 & 장착 시스템 👜

이 게임에서는 유사 난수 생성기를 활용합니다. 따라서 시드와 명령어 순서만 알고 있다면, 항상 같은 결과를 얻을 수 있습니다!

  • 랜덤 함수

    • 시드

      •  00 이상 2322^{32} 미만의 정수이며 S_0S\_0으로 정의합니다.
    • rand()

      • 유사 난수 생성기 함수이며, 선형 합동 생성기를 활용합니다.
      • rand() 함수를 ii번째로 호출하면 S_n+1=(aS_n+c) mod mS\_{n + 1} = (aS\_n + c) \bmod m식에 따라 S_iS\_i를 반환합니다.
      •  S_0S\_0은 위에서 언급한 시드입니다.
      • 이때 a=1,664,525a = 1\\,664\\,525 , c=1,013,904,223c = 1\\,013\\,904\\,223 , m=232m = 2^{32} 입니다.
    • randInt(ll, rr)

      •  ll 이상 rr 이하의 정수를 반환하는 함수입니다.
      • randInt(ll, rr)를 호출하면 l+((l +((rand()×(r−l+1))÷m\times (r-l+1)) \div m 의 몫 ))을 반환합니다.
    • chance(pp)

      •  pp% 확률로 True를 반환하는 함수입니다.
      • chance(pp)를 호출하면 randInt(11, 100100) ≤p\le p의 논리 연산 결과를 반환합니다.
    • choice(arr\text{arr})

      • 배열 arr\text{arr}에 있는 임의의 원소 하나를 반환하는 함수입니다.
      • choice(arr\text{arr})을 호출하면 배열 arr\text{arr}의 randInt(00, arr\text{arr}의 길이 − 1-\ 1)번째 원소를 반환합니다.
        • 원소가 NN개인 배열은 첫 번째 원소가 00번째이고, 마지막 원소가 N−1N - 1번째 원소입니다.
    • 명령어

      • 랜덤 함수를 호출하는 명령어는 제공하지 않습니다.
  • 인벤토리

    • 인벤토리를 통해 곡괭이 3개, 루나, 강화석, 축복 강화석을 보유할 수 있습니다.

      • 곡괭이는 모든 곡괭이 능력치의 집합으로 표현됩니다.

        • 곡괭이 능력치는 게임 시스템[🎮] 설명란에서 정의했음을 유의하세요.
      • 루나는 00 이상 INF\text{INF} 이하의 정수로 표현됩니다.

      • 강화석은 길이가 55인 정수형 배열로 표현됩니다.

        • 각 원소는 00 이상 INF\text{INF} 이하의 정수입니다.

          •  00번째 원소는 일반 강화석 개수를 의미합니다.
          •  11번째 원소는 레어 강화석 개수를 의미합니다.
          •  22번째 원소는 에픽 강화석 개수를 의미합니다.
          •  33번째 원소는 유니크 강화석 개수를 의미합니다.
          •  44번째 원소는 레전드리 강화석 개수를 의미합니다.
        • 5종류의 강화석은 등급 순서대로 0번, 1번, 2번, 3번, 4번 등급 강화석으로 부르기도 합니다.

      • 축복 강화석 개수는 00 이상 INF\text{INF} 이하의 정수로 표현됩니다.

    • 게임 시작 시

      • 초기 곡괭이 3개와 1000 루나, 일반 강화석 20개가 지급됩니다.

      • 축복 강화석, 레어 강화석, 에픽 강화석, 유니크 강화석, 레전드리 강화석은 0개입니다.

      • 초기 곡괭이의 능력치는 다음과 같습니다.

        • 제련 레벨 : 00 
        • 마법 등급 : 일반
        • 마법 : 0번, 1번, 2번 마법 슬롯 모두 0번 마법이 부여된 상태
        • 최소 루나 : 11 
        • 최대 루나 : 100100 
        • 달빛 : 00 
        • 배율 : 100100 
        • 강화석 드랍률 : 모든 등급 00(%)
        • 행운 : 11 
        • 할인 : 100100 
    • 명령어

      • 인벤토리를 열람하는 명령어는 제공하지 않습니다.
  • 장착

    • 원하는 곡괭이를 장착합니다.

    • 장착한 곡괭이로만 채광할 수 있습니다.

    • 장착한 곡괭이에만 제련, 마법 승급, 마법 부여를 할 수 있습니다.

    • 게임은 0번 곡괭이를 장착한 상태에서 시작합니다.

    • 명령어

      • equip  xx  : xx번째 곡괭이를 장착합니다.
      •  xx는 00 이상 22 이하의 정수이어야 합니다.
      • 반환값
        • 1 : 장착에 성공한 경우 반환합니다.

이제 여러분은 이 게임을 즐길 준비가 된 겁니다! 한번 강화 시스템들도 하나씩 알아보죠. 다음은 제련 시스템[🔨]입니다!


🔨 제 3장. 제련 시스템 ��

  • 제련

    강화 전강화 후비용성공 확률최소 루나최대 루나일반 강화석 드랍률달빛레어 강화석 드랍률에픽 강화석 드랍률유니크 강화석 드랍률
    -0레벨--1100-----
    0 레벨1 레벨1000 루나100.00%100200-----
    1 레벨2 레벨2000 루나95.00%200400-----
    2 레벨3 레벨3000 루나90.00%300600-----
    3 레벨4 레벨4000 루나85.00%400800-----
    4 레벨5 레벨5000 루나80.00%5001000-----
    5 레벨6 레벨6000 루나80.00%60012001%----
    6 레벨7 레벨7000 루나80.00%70014002%----
    7 레벨8 레벨8000 루나80.00%80016003%----
    8 레벨9 레벨9000 루나80.00%90018004%----
    9 레벨10 레벨10000 루나80.00%100020005%----
    10 레벨11 레벨11000 루나70.00%120024007%100---
    11 레벨12 레벨12000 루나60.00%150030009%200---
    12 레벨13 레벨13000 루나50.00%1900380011%300---
    13 레벨14 레벨14000 루나40.00%2400480013%400---
    14 레벨15 레벨15000 루나30.00%3000600015%500---
    15 레벨16 레벨20000 루나30.00%3500700016%7001%--
    16 레벨17 레벨22500 루나30.00%4000800017%9002%--
    17 레벨18 레벨25000 루나30.00%4500900018%11003%--
    18 레벨19 레벨27500 루나30.00%50001000019%13004%--
    19 레벨20 레벨30000 루나30.00%55001100020%15005%--
    20 레벨21 레벨35000 루나25.00%70001400022%20007%1%-
    21 레벨22 레벨40000 루나20.00%80001600024%25009%2%-
    22 레벨23 레벨45000 루나15.00%90001800026%300011%3%-
    23 레벨24 레벨50000 루나10.00%100002000028%350013%4%-
    24 레벨25 레벨60000 루나5.00%110002000030%400015%5%-
    25 레벨26 레벨70000 루나5.00%130002000034%500018%7%-
    26 레벨27 레벨80000 루나4.00%150002000038%600021%9%-
    27 레벨28 레벨90000 루나3.00%170002000042%700024%11%-
    28 레벨29 레벨100000 루나2.00%190002000046%800027%13%-
    29 레벨30 레벨200000 루나1.00%200002000050%1000030%15%-
    -31 레벨--220002200055%1200035%18%-
    -32 레벨--240002400060%1400040%21%-
    -33 레벨--260002600065%1600045%24%-
    -34 레벨--290002900075%1900052%28%-
    -35 레벨--320003200085%2200059%32%-
    -36 레벨--350003500095%2500066%36%-
    -37 레벨--4000040000100%3000076%40%-
    -38 레벨--4500045000200%3500086%45%-
    -39 레벨--5000050000400%50000100%50%25%
    • - 로 표시된 칸은, 해당 레벨에서는 해당 능력치가 제공되지 않는다는 의미입니다.

    • 위 표를 참고하여, 곡괭이의 레벨에 따른 성공 확률, 제련 비용, 제련 후의 곡괭이 능력치를 알 수 있습니다.

      • 제련하기 위한 비용은 위 표를 따르나, 마법에 의해 비용이 감소할 수도 있습니다.
      • 해당 내용은 마법 시스템[🪄][🔮], 채광 시스템[⛏]에서 정의하고 있으니 마법 시스템[🪄][🔮], 채광 시스템[⛏] 부분을 참고해 주세요.
    • 제련 레벨은 최대 30레벨까지 존재하며, 최종 레벨은 최대 39레벨까지 존재합니다. 즉, 제련으로 올릴 수 있는 레벨은 30레벨이 최대입니다.

    • 성공 여부에 따라 결과가 2가지 존재합니다.

      • 실패할 경우, 레벨이 유지됩니다.
      • 성공할 경우, 레벨이 11 상승합니다.
    • 명령어

      • smelt : 장착한 곡괭이의 제련 레벨 올리기를 시도합니다.

      • 반환값이 -1이 아닐 때, 현재 레벨에서 다음 레벨로 올라갈 확률이 pp%라면 chance(pp)를 한 번 호출합니다.

      • 반환값

        • -1 : 제련하기 위한 루나가 부족하거나 제련 레벨이 최대 레벨에 도달한 경우 반환합니다.
        • 0 : 제련에 실패한 경우 반환합니다. 즉, chance(pp) 값이 False인 경우입니다.
        • 1 : 제련에 성공한 경우 반환합니다. 즉, chance(pp) 값이 True인 경우입니다.

곡괭이의 기본 능력치를 담당하는 제련 시스템[🔨]입니다. 제련 레벨은 높을수록 무조건 좋습니다! 아마도요?


🪄 제 4장. 마법 부여 시스템 ��

  • 마법 부여

    표기 이름 →달빛+ (1)달빛% (2)달빛의 기운 (3)최소치+ (4)최소치% (5)최소치의 기운 (6)
    효과 설명 →달빛 증가달빛 증가달빛 3배 증가최소 루나 증가최소 루나 증가최소 루나 3배 증가
    일반(+) 1~100--(+) 1~100--
    레어(+) 1~300(%) 10~50-(+) 1~400(%) 10~50-
    에픽(+) 1~500(%) 10~100-(+) 1~800(%) 10~100-
    유니크(+) 500~700(%) 100~150(%) 200(+) 800~1200(%) 100~150(%) 200
    레전드리(+) 700~1500(%) 150~200(%) 200(+) 1200~2000(%) 150~200(%) 200
    표기 이름 →최대치+ (7)최대치% (8)최대치의 기운 (9)배율+ (10)배율% (11)배율의 기운 (12)
    효과 설명 →최대 루나 증가최대 루나 증가최대 루나 3배 증가배율 증가배율 증가배율 3배 증가
    일반(+) 2~200--(+) 1~5--
    레어(+) 200~800(%) 10~50-(+) 5~10--
    에픽(+) 800~1600(%) 50~100-(+) 10~25(%) 1~10-
    유니크(+) 1600~2400(%) 100~150(%) 200(+) 25~50(%) 10~50(%) 200
    레전드리(+) 2400~4000(%) 150~200(%) 200(+) 50~100(%) 50~100(%) 200
    표기 이름 →드랍률 (13)행운 (14)강화석의 기운 (15)레벨 (16)할인 (17)루나의 기운 (18)
    효과 설명 →특정 강화석 드랍률 증가얻는 강화석 개수 증가모든 강화석 드랍률 3배 증가레벨 증가할인 적용최종 루나 3배 증가
    일반(+) 1~5 [일반 강화석만](+) 1--(+) -5-
    레어(+) 5~10 [일반 강화석만](+) 2--(+) -10-
    에픽(+) 5~10 [레어 강화석만](+) 3-(+) 1(+) -15-
    유니크(+) 10~20 [레어 강화석만](+) 4(%) 200(+) 2(+) -20(%) 200
    레전드리(+) 20~25 [에픽 강화석만](+) 5(%) 200(+) 3(+) -25(%) 200
    • - 로 표시된 칸은, 해당 마법 등급에서는 해당 마법이 나오지 않는다는 의미입니다.

    • 마법은 곡괭이의 기본 능력치를 변경하지 않습니다. 채광 시스템[⛏]의 계산식에서만 영향을 주는 것에 유의하세요.

    • 표기 이름 옆의 소괄호 안 정수는("달빛+ (1)", "배율% (11)")은 마법의 고유한 아이디입니다. 이 아이디로 어떤 종류의 마법인지 알 수 있습니다.

      • 0번 마법은 아무 능력 없음으로 정의합니다. 또한 0번 마법은 마법 부여 시에 나타나지 않습니다.
      •  ii번 마법이 채광 시스템[⛏]에서 영향을 주는 능력치 값을 x_ix\_i라 정의합니다.
    • 마법 등급별 세부 수치 옆의 소괄호 안 기호는("(+) 2~200", "(%) 1~10")은, 해당 마법이 어떻게 계산되는가를 나타내는 연산 기호입니다.

      • 세부 수치로 결정된 값을 정수 yy라 정의합니다.

        • 만약 세부 수치가 범위 형태일 때 세부 수치의 최솟값을 y_min⁡y\_{\min}, 최댓값을 y_max⁡y\_{\max}라 하면, y=y= randInt(y_min⁡y\_{\min}, y_max⁡y\_{\max})입니다.
        • 만약 세부 수치가 범위 형태가 아니고 단일 수치라면, yy는 해당 수치값입니다.
      • 연산 기호

        • + : x_i=x_i+yx\_i=x\_i+y 

        • % : x_i=x_i+((x_i×y)÷100x\_i= x\_i + ( (x\_i \times y) \div 100 의 몫 )) 

        • 13, 15번 마법처럼 x_ix\_i가 정수가 아닌 정수형 배열일 수도 있습니다. 15번의 경우는 모든 x_i\[j]x\_i\[j]에 대해 다음과 같이 연산합니다.

          • + : x_i\[j]=x_i\[j]+yx\_i\[j]=x\_i\[j]+y 
          • % : x_i\[j]=x_i\[j]+((x_i\[j]×y)÷100x\_i\[j]= x\_i\[j] + ( (x\_i\[j] \times y) \div 100 의 몫 )) 
        • 13번의 경우는 15번과 비슷하지만, 특정 jj에 대해서만 연산합니다.

          • 곡괭이 마법 등급이 일반, 레어 등급인 경우 j=0j=0인 경우에 대해서만 x_i\[j]x\_i\[j]를 계산합니다.
          • 곡괭이 마법 등급이 에픽, 유니크 등급인 경우 j=1j=1인 경우에 대해서만 x_i\[j]x\_i\[j]를 계산합니다.
          • 곡괭이 마법 등급이 레전드리 등급인 경우 j=2j=2인 경우에 대해서만 x_i\[j]x\_i\[j]를 계산합니다.
    • 마법 부여 방식은 다음과 같습니다.

      • 장착한 곡괭이의 마법 등급에서 나올 수 있는 마법 아이디를 오름차순 상태로 정렬한 상태의 배열을 magic\text{magic}이라 정의합니다.

      • 다음 과정을 0번, 1번, 2번 마법 슬롯 순서대로 진행합니다.

        • choice(magic\text{magic})에서 나온 값을 해당 마법 슬롯의 마법 아이디로 합니다.

          • 마법 부여가 이루어지면 기존 마법 슬롯에 있던 마법은 사라집니다.
          • 즉, 마법 부여를 통해 기존 마법을 새 마법으로 덮어쓰게 되며 되돌릴 수 없으니 주의해 주세요.
        • 해당 마법 아이디의 세부 수치가 범위 형태일 때 위에서 언급한 y=y= randInt(y_min⁡y\_{\min}, y_max⁡y\_{\max})를 시행합니다.

    • 마법 아이디에 대응하는 곡괭이 능력치 종류는 다음과 같습니다.

      • 0번 : 없음
      • 1, 2, 3번 : 달빛
      • 4, 5, 6번 : 최소 루나
      • 7, 8, 9번 : 최대 루나
      • 10, 11, 12번 : 배율
      • 13, 15번 : 강화석 드랍률
      • 14번 : 행운
      • 16번 : 레벨
      • 17번 : 할인
      • 18번 : 최종 루나
        • 최종 루나는 채광 시스템[⛏]에서 정의하고 있으니 채광 시스템[⛏] 부분을 참고해 주세요.
    • 장착한 곡괭이의 마법 등급에 따라 마법 부여 비용이 다릅니다.

      • 일반 : 1000 루나
      • 레어 : 3000 루나
      • 에픽 : 8000 루나
      • 유니크 : 15000 루나
      • 레전드리 : 50000 루나
    • 명령어

      • enchant : 장착한 곡괭이에 마법 3개를 부여합니다.

      • 반환값

        • -1 : 마법 부여를 하기 위한 루나가 부족한 경우 반환합니다.

        • 1 : 마법 부여에 성공한 경우 다음과 같은 형태로 반환합니다.

          1 <magic slot 0 id> : 0번 마법 슬롯의 마법 아이디 <magic slot 0 data> : 0번 마법 슬롯의 yy값 <magic slot 1 id> : 1번 마법 슬롯의 마법 아이디 <magic slot 1 data> : 1번 마법 슬롯의 yy값 <magic slot 2 id> : 2번 마법 슬롯의 마법 아이디 <magic slot 2 data> : 2번 마법 슬롯의 yy값

          •  yy값은 항상 −25-25 이상 4,0004\\,000 이하의 정수로 주어집니다.

마법 시스템[🪄][🔮]을 통해 곡괭이를 더 강화할 수 있습니다! 제련 시스템[🔨]과 마법 시스템[🪄][🔮]은 서로 영향을 줄 수 있으니 한번 마법 종류를 꼼꼼하게 읽어보는 것을 추천합니다.


💎 제 5장. 합성 & 마법 승급 시스템 ��

  • 합성

    •  r−1r-1번 등급 강화석 2개와 루나를 소모하여 rr번 등급 강화석 1개를 제작합니다. 이를 rr번 등급 강화석 합성이라고 정의합니다.

    • 합성하고자 하는 강화석의 등급에 따라 합성 비용이 다릅니다.

      • 일반 : 합성을 통해 제작할 수 없음.
      • 레어 : 1250 루나
      • 에픽 : 2500 루나
      • 유니크 : 5000 루나
      • 레전드리 : 10000 루나
    • 명령어

      • craft  rr  : rr번 등급 강화석을 합성합니다.

      •  rr은 11 이상 44 이하의 정수이어야 합니다.

      • 각 정수에 대응하는 등급은 다음과 같습니다.

        •  11은 레어 강화석입니다.
        •  22는 에픽 강화석입니다.
        •  33은 유니크 강화석입니다.
        •  44는 레전드리 강화석입니다.
      • 반환값

        • -1 : 합성을 하기 위한 이전 등급의 강화석 또는 루나가 부족한 경우 반환합니다.
        • 1 : 합성에 성공한 경우 반환합니다.
  • 마법 승급

    • 강화석을 소모해 장착한 곡괭이의 마법 등급을 한 단계 올립니다.

    • 목표 등급 강화석 1개를 소모합니다.

      • 예를 들어 일반 등급 곡괭이를 레어 등급 곡괭이로 승급시키기 위해서 레어 강화석 1개를 소모합니다.
    • 목표로 하는 마법 등급마다 성공 확률이 존재합니다.

      • 일반 : 마법 승급을 통해 도달할 수 없음.
      • 레어 : 16%
      • 에픽 : 9%
      • 유니크 : 4%
      • 레전드리 : 1%
    • 성공 여부에 따라 결과가 2가지 존재합니다.

      • 성공할 경우, 마법 등급이 한 단계 상승합니다. 그리고 0번, 1번, 2번 마법 슬롯이 0번 마법으로 대체됩니다.
      • 실패할 경우, 축복 강화석을 얻습니다.
        • 축복 강화석은 축복 시스템[🙏]에서 정의하고 있으니 축복 시스템[🙏] 부분을 참고해 주세요.
    • 명령어

      • rank_up : 장착한 곡괭이의 마법 승급을 시도합니다.

      • 반환값이 -1이 아닐 때 현재 마법 등급에서 승급할 확률이 pp%라면 chance(pp)를 한 번 호출합니다.

      • 반환값

        • -1 : 목표 등급 강화석이 부족하거나, 장착한 곡괭이의 마법 등급이 레전드리일 경우 반환합니다.
        • 0 : 마법 승급에 실패한 경우 반환합니다. 즉, chance(pp) 값이 False인 경우입니다.
        • 1 : 마법 승급에 성공한 경우 반환합니다. 즉, chance(pp) 값이 True인 경우입니다.

합성 시스템[💎]과 마법 승급 시스템[🔮]은 마법 부여 시스템[🪄]을 더 강력하게 만들어주는 시스템입니다. 강력한 마법을 얻고 싶다면 해당 시스템을 숙지해 두는 게 좋겠네요!


🙏 제 6장. 축복 시스템 🙏

  • 축복

    레벨최소 루나 증가최대 루나 증가달빛 증가일반 강화석 드랍률 증가배율 증가
    0 레벨-----
    1 레벨(+) 100(+) 200(+) 100(+) 1%-
    2 레벨(+) 200(+) 400(+) 200(+) 2%-
    3 레벨(+) 300(+) 600(+) 300(+) 3%-
    4 레벨(+) 400(+) 800(+) 400(+) 4%-
    5 레벨(+) 500(+) 1000(+) 500(+) 5%-
    6 레벨(+) 600(+) 1200(+) 600(+) 6%-
    7 레벨(+) 700(+) 1400(+) 700(+) 7%-
    8 레벨(+) 800(+) 1600(+) 800(+) 8%-
    9 레벨(+) 900(+) 1800(+) 900(+) 9%-
    10 레벨(+) 1000(+) 2000(+) 1000(+) 10%-
    11 레벨(+) 1100(+) 2200(+) 1100(+) 11%-
    12 레벨(+) 1200(+) 2400(+) 1200(+) 12%-
    13 레벨(+) 1300(+) 2600(+) 1300(+) 13%-
    14 레벨(+) 1400(+) 2800(+) 1400(+) 14%-
    15 레벨(+) 1500(+) 3000(+) 1500(+) 15%-
    16 레벨(+) 1600(+) 3200(+) 1600(+) 16%-
    17 레벨(+) 1700(+) 3400(+) 1700(+) 17%-
    18 레벨(+) 1800(+) 3600(+) 1800(+) 18%-
    19 레벨(+) 1900(+) 3800(+) 1900(+) 19%-
    20 레벨(+) 2000(+) 4000(+) 2000(+) 20%-
     bb 레벨(+) 2000(+) 4000(+) 2000(+) 20%(+) (bb - 20)%
    • - 로 표시된 칸은, 해당 축복 레벨에서는 해당 능력치가 제공되지 않는다는 의미입니다.

    • 위 표를 참고하여, 축복 레벨에 의해 얻는 능력치를 알 수 있습니다.

      • 축복으로 얻은 능력치는 채광 시스템[⛏]의 계산식에서만 영향을 줍니다. 축복은 곡괭이의 능력치가 아님에 유의하세요.
      • 위 표에서 bb는 2121 이상 INF\text{INF} 이하의 정수입니다.
    • 축복 강화석을 일정량 보유 시, 즉시 축복 강화석이 일정량 소모되고 축복 레벨이 11 상승합니다.

      • 현재 축복 레벨이 nn일 때, 레벨 상승을 위해 n+1n+1개의 축복 강화석이 필요합니다. (nn은 00 이상 INF\text{INF} 미만의 정수)
    • 마법 승급에 실패할 때, 목표로 하는 곡괭이의 마법 등급에 따라 일정량의 축복 강화석을 얻습니다.

      • 일반 : 마법 승급을 통해 도달할 수 없음.
      • 레어 : 1개
      • 에픽 : 2개
      • 유니크 : 4개
      • 레전드리 : 8개
    • 명령어

      • 축복 시스템[🙏]을 열람하는 명령어는 제공하지 않습니다.

축복은 곡괭이의 연이은 마법 승급 실패의 고통을 덜어주는 시스템입니다. 정말 갓겜이죠?


⛏ 제 7장. 채광 시스템 ⛏

  • 채광

    • 축복 레벨 그리고 장착한 곡괭이의 제련 레벨과 마법 상태에 따라 얻게 되는 루나와 강화석의 양이 달라집니다.

    • 채광 프로세스 : 해당 과정은 작성된 순서대로 이루어지며, rand() 호출 순서에 따라 결과가 달라질 수 있음에 유의하세요.

      • 얻을 재화 계산에 필요한 값들을 구합니다.

        • 최종 레벨을 계산합니다.

          • 장착한 곡괭이의 0, 1, 2번 마법 슬롯 중 16번 마법이 존재한다면 해당 수치에 맞게 레벨을 상승시킵니다.
          • 즉, 레벨 마법을 적용합니다.
        • 제련 능력치를 불러옵니다.

          • 장착한 곡괭이의 최종 레벨에 알맞은 능력치를 불러옵니다.
          • 이를 기본 최소 루나, 기본 최대 루나, 기본 달빛, 기본 강화석 드랍률이라 정의합니다.
        • 축복 능력치를 불러옵니다.

          • 현재 축복 레벨에 맞는 능력치를 불러옵니다.
          • 이를 축복 최소 루나, 축복 최대 루나, 축복 달빛, 축복 강화석 드랍률, 축복 배율이라 정의합니다.
        • 최종 배율은 다음과 같이 계산됩니다.

          • 최종 배율 = (100 + 축복 배율) ← 마법 적용
          • 해당 수치에 영향을 주는 마법은 10, 11, 12번 마법입니다.
        • 최종 달빛은 다음과 같이 계산됩니다.

          • 최종 달빛 = (기본 달빛 + 축복 달빛) ← 마법 적용
          • 해당 수치에 영향을 주는 마법은 1, 2, 3번 마법입니다.
        • 최종 최소 루나는 다음과 같이 계산됩니다.

          • 최종 최소 루나 = ((((기본 최소 루나 + 축복 최소 루나) ← 마법 적용) + 최종 달빛) ×\times 최종 배율) ÷\div 100 의 몫
          • 해당 수치에 영향을 주는 마법은 4, 5, 6번 마법입니다.
        • 최종 최대 루나는 다음과 같이 계산됩니다.

          • 최종 최대 루나 = ((((기본 최대 루나 + 축복 최대 루나) ← 마법 적용) + 최종 달빛) ×\times 최종 배율) ÷\div 100 의 몫
          • 해당 수치에 영향을 주는 마법은 7, 8, 9번 마법입니다.
        • 최종 강화석 드랍률은 다음과 같이 계산됩니다.

          • 최종 강화석 드랍률 = (기본 강화석 드랍률 + 축복 강화석 드랍률) ← 마법 적용
          • 강화석 등급별로 독립적으로 계산됩니다.
          • 해당 수치에 영향을 주는 마법은 13, 15번 마법입니다.
        • 최종 행운은 다음과 같이 계산됩니다.

          • 최종 행운 = (1) ← 마법 적용
          • 해당 수치에 영향을 주는 마법은 14번 마법입니다.
        • 최종 할인은 다음과 같이 계산됩니다.

          • 최종 할인 = (100) ← 마법 적용
          • 해당 수치에 영향을 주는 마법은 17번 마법입니다.
          • 이 수치는 채광 시스템[⛏]에서 사용되지 않고, 제련 시스템[🔨]에서 사용됩니다.
          • 제련 시 ‘(본래 제련 시 드는 비용) ×\times (최종 할인) ÷\div 100 의 몫’이 최종 제련 비용이 됩니다.
      • 최종 루나는 다음과 같이 계산됩니다.

        • randInt(최종 최소 루나, max⁡\max(최종 최소 루나, 최종 최대 루나))의 값
      • 다음 값이 채광을 통해 획득하는 루나의 수 입니다.

        • 획득하는 루나 = (최종 루나) ← 마법 적용
        • 해당 수치에 영향을 주는 마법은 18번 마법입니다.
      • 다음 값이 획득하는 강화석의 개수입니다.

        • 일반, 레어, 에픽, 유니크, 레전드리 순서로 진행됩니다.

          • 해당 등급 최종 강화석 드랍률이 100(%) 이상이라면 100(%) 당 강화석 1개를 확정적으로 지급합니다. 이를 확정적으로 얻는 해당 등급의 강화석이라 정의합니다.

          • 강화석 드랍률을 100으로 나눈 나머지를 d_id\_i로 정의합니다. 이를 확률적으로 얻는 해당 등급의 강화석이라 정의합니다.

          • chance(d_id\_i)가 True면 강화석을 1개 얻습니다.

            •  d_id\_i가 00이어도 호출됨을 유의하세요.
          • 획득하는 해당 등급의 강화석 개수 = ((확정적으로 얻는 해당 등급의 강화석의 개수) ++ (확률적으로 얻는 해당 등급의 강화석의 개수)) ×\times (최종 행운)

    • 명령어

      • mine : 장착한 곡괭이로 채광합니다.

      • 반환값 :

        • 1 : 채광에 성공한 경우, 다음 한 줄에 길이가 66인 정수형 배열을 추가로 반환합니다.

          • 배열은 채광으로 획득한 [루나, 일반 강화석의 개수, 레어 강화석의 개수, 에픽 강화석의 개수, 유니크 강화석의 개수, 레전드리 강화석의 개수]로 구성됩니다.
          • 각 원소는 00 이상 INF\text{INF} 이하의 정수입니다.
          • 각 원소는 공백으로 구분되어 주어집니다.

강화한 곡괭이로 채광하는 과정입니다. 꽤 복잡하지만 제련 레벨, 축복 레벨, 마법 등급이 높을수록 더 많은 재화를 얻는다고 보면 됩니다!


🏆 최종장. 업적 시스템 🏆

  • 업적

    업적 번호업적 이름달성 조건
    1제로부터 시작하는 Lunatic Mine정확히 00 루나 보유
    2끝이야?제련 레벨이 3030 레벨인 곡괭이 보유
    3레전설레전드리 등급 곡괭이 보유
    4양자 곡괭이(최종 최대 루나 - 최종 최소 루나) 값이 100,000100\\,000 이상인 곡괭이 보유
    5역전 곡괭이(최종 최대 루나 - 최종 최소 루나) 값이 00 미만인 곡괭이 보유
    6오버플로우아무 등급의 강화석 드랍률이 100100% 초과인 곡괭이 보유
    7전설의 광부의 전설레전드리 등급 곡괭이 33개 보유
    8만수루 100,000,000100\\,000\\,000 루나 이상 보유
    9광(狂)부모든 곡괭이 최종 레벨 합산 100100 이상 달성
    10진짜로 끝이야.최종 레벨이 3939 레벨인 곡괭이 보유
    • Lunatic Mine 게임에는 총 10개의 도전과제가 존재합니다.
    • 1개의 행동을 완료할 때마다 도전과제 달성 여부를 확인합니다.
    • 각각의 도전과제는 한번 달성하면, 이후에 조건을 만족시키지 못하더라도 달성한 것으로 유지됩니다.
    • 명령어
      • 업적 시스템[🏆]을 열람하는 명령어는 제공하지 않습니다.
  • 게임 종료

    • 명령어
      • exit : Lunatic Mine 게임을 종료합니다. 😢
  • 채점

    • 여러분은 이 게임을 플레이해서 엔딩을 보셔야 합니다!

    • 엔딩의 조건은 다음과 같습니다.

      • 채점 데이터 273개에 대해 각각 해당 조건을 만족시켜야 합니다.

        • 게임 종료를 제외한 명령어 사용 횟수가 20,00020\\,000번 이하이어야 합니다.
        • 마지막 명령어는 게임 종료 명령어이어야 합니다.
        • 게임 종료 명령어를 입력했을 때, 10개의 업적이 모두 달성되어 있어야 합니다.
      • 각 채점 데이터에서 시드가 주어집니다. 273개의 시드는 아래의 제한 설명란을 참고해 주세요.

    • 엔딩을 보신다면 이 문제에서 를 받을 수 있습니다. 한번 광질을 하러 가볼까요?


📝 세 줄 요약 📝

  • 이 문제는 해당 게임을 플레이하는 프로그램을 작성하는 문제입니다.
  • 장착 명령어로 곡괭이를 장착하고, 채광 명령어로 재화를 얻고, 제련, 마법 부여, 마법 승급, 합성 명령어로 곡괭이를 강화합니다.
  • 입력으로는 시드가 주어지며, 주어진 모든 273개의 데이터에 대해 10개의 업적을 모두 달성하면 를 받습니

입력

첫 번째 줄에 시드 S_0S\_0가 주어집니다. (0≤S_0<232)(0 \le S\_0 \lt 2^{32})

출력

다음을 표준 출력 스트림(stdout)으로 한 줄에 출력하여 20,00020\\,000번까지 명령어를 사용할 수 있습니다.

  • mine : 장착한 곡괭이로 채광합니다.
  • equip xx  : xx번 곡괭이를 장착합니다. (0≤x≤2)(0 \le x \le 2) 
  • smelt : 장착한 곡괭이의 제련 레벨 올리기를 시도합니다.
  • craft rr  : rr번 등급 강화석을 합성합니다. (1≤r≤4)(1 \le r \le 4) 
  • rank_up : 장착한 곡괭이의 마법 승급을 시도합니다.
  • enchant : 장착한 곡괭이에 마법 3개를 부여합니다.

명령어를 출력한 뒤, 여러분은 인터랙터에게서 다음과 같은 결과를 알 수 있습니다.

  • mine : 첫 번째 줄에 명령어 결과가 출력됩니다. 채광에 성공한 경우에 한해서 추가로 1개 줄에 걸쳐 채광 결과가 출력됩니다.

    • 1 : 채광에 성공한 경우

      • 다음 1개의 줄이 추가로 출력됩니다.

        • <luna> <normal_upgrade_stone> <rare_upgrade_stone> <epic_upgrade_stone> <unique_upgrade_stone> <legendary_upgrade_stone>
        • 위의 모든 값은 00 이상 INF\text{INF} 이하의 정수로 주어집니다.
  • equip xx  : 첫 번째 줄에 명령어 결과가 출력됩니다.

    • 1 : 장착에 성공한 경우
  • smelt : 첫 번째 줄에 명령어 결과가 출력됩니다.

    • -1 : 제련하기 위한 루나가 부족하거나 제련 레벨이 최대 레벨에 도달한 경우
    • 0 : 제련에 실패한 경우
    • 1 : 제련에 성공한 경우
  • craft rr  : 첫 번째 줄에 명령어 결과가 출력됩니다.

    • -1 : 합성을 하기 위한 이전 등급의 강화석 또는 루나가 부족한 경우
    • 1 : 합성에 성공한 경우
  • rank_up : 첫 번째 줄에 명령어 결과가 출력됩니다.

    • -1 : 목표 등급 강화석이 부족하거나, 장착한 곡괭이의 마법 등급이 레전드리일 경우
    • 0 : 승급에 실패한 경우
    • 1 : 승급에 성공한 경우
  • enchant : 첫 번째 줄에 명령어 결과가 출력됩니다. 마법 부여에 성공한 경우에 한해서 추가로 6개 줄에 걸쳐 마법 부여의 결과가 출력됩니다.

    • -1 : 마법 부여를 하기 위한 루나가 부족한 경우

    • 1 : 마법 부여에 성공한 경우

      • 다음 6개의 줄이 추가로 출력됩니다.

        • <magic slot 0 id>
        • <magic slot 0 data>
        • <magic slot 1 id>
        • <magic slot 1 data>
        • <magic slot 2 id>
        • <magic slot 2 data>
    • <magic slot 0 id>, <magic slot 1 id>, <magic slot 2 id>는 11 이상 1818 이하의 정수로 주어집니다.

    • <magic slot 0 data>, <magic slot 1 data>, <magic slot 2 data>는 −25-25 이상 4,0004\\,000 이하의 정수로 주어집니다.

만약 게임을 종료하고 싶다면 다음과 같이 출력합니다.

  • exit를 한 줄에 출력합니다.
  • 출력을 마친 직후 프로그램을 종료합니다.

다음과 같은 경우에는 를 받습니다.

  • 게임 종료를 제외한 명령어 사용 횟수가 20,00020\\,000번을 초과한 경우

  • 다음 예시와 같이 명령어 사용 중에 유효한 범위 내의 정수를 출력하지 않는 경우

    • equip xx  명령어에서 x=3x = 3인 경우
    • craft rr  명령어에서 r=0r = 0인 경우

다음과 같은 경우에는 예상하지 못한 채점 결과를 받을 수 있습니다.

  • 어떤 출력 직후 출력 버퍼를 비우지 않은 경우
  • 출력 형식을 어기는 경우
  • 정답 출력을 마친 직후 프로그램을 종료하지 않은 경우

제한

채점 데이터 273개의 각 시드는 다음과 같습니다.

  • 1862538421, 192693474, 2472848044, 2895839591, 4234048010, 3783670316, 585521783, 4024458069, 3052185564, 2233264476, 1545484490, 2558925763, 2266317592, 376534116, 3246980444, 833327613, 2789119774, 1000566532, 3375505481, 2150019652, 1402153620, 706063958, 3254896780, 1631583093, 2421125164, 3685802975, 3901985367, 2512424818, 4138913925, 83431422, 2431377546, 56357581, 3458832251, 4174515225, 3824944713, 3126953839, 2784706672, 4089928192, 525443002, 58335198, 2252937767, 790662409, 1267595300, 1641256185, 247881980, 3611792099, 4083816982, 2038325350, 57520250, 3827750312, 3322074672, 1601702001, 408133686, 2419036451, 3364365824, 3597166208, 2247307115, 1962178654, 1784011574, 2169035327, 2312364783, 1278297087, 1511316662, 2898028050, 576433360, 2384425963, 3956589767, 1655536062, 3491881761, 3646970477, 4060122242, 2803807644, 2183977317, 1549494274, 1248481496, 3783402640, 3984376381, 4223366429, 2536679677, 2087878803, 3682669997, 803913810, 3843496437, 2929466063, 74566307, 3952787622, 644482098, 2887371412, 956205127, 7369883, 4175250364, 189806644, 2775561613, 1246691137, 3328549706, 1114784965, 2381171890, 2502495945, 1705306555, 2713305170, 2348264199, 2118999346, 1424966344, 2923188932, 889365229, 2558708866, 1493582713, 562140579, 3630877946, 1636312080, 3078413503, 447621008, 2961344208, 776721666, 1355647956, 898556247, 2321782663, 1098010307, 3580981048, 2341465796, 2225133857, 2690795459, 4124123800, 493169549, 1709901102, 615567460, 3951182182, 860030121, 2843159645, 1101956466, 1424789975, 1420898684, 1332804951, 3286085476, 2188379223, 2922992945, 475362393, 3574640559, 1348763073, 128376441, 4047546310, 3178776982, 4016265345, 787726945, 3549240693, 3896151954, 790846261, 2329686336, 2232565467, 2941623398, 4210624961, 635848434, 2639331217, 3772743305, 2401051113, 3094340044, 1383581498, 4229996755, 2285103966, 3826825965, 2606275018, 3168048382, 2739996120, 2357205560, 2975099774, 2043624067, 605285298, 624417961, 908032891, 3699345510, 567041713, 3482226978, 675827087, 3982176493, 349142046, 831680894, 3426225560, 4107947654, 390114902, 4082485937, 1634149073, 2130762027, 3603236747, 2147801087, 3837825236, 3971166451, 1881031586, 3634501447, 4161475220, 654824570, 316105196, 3253134115, 208684904, 2133831977, 3585140402, 3951903306, 2773601234, 3033502673, 3236080332, 2075889510, 3186893406, 1045176472, 183616481, 2027325216, 3608348589, 2030965569, 3076336500, 1499559601, 838763120, 2731648265, 1770539795, 1298350644, 2193666374, 1888453161, 129994837, 4144255946, 2921160096, 1432682322, 774551952, 3138793617, 1129499479, 3013413674, 3694251808, 3805514875, 877124738, 4234471185, 3200483109, 2529051202, 1990962994, 357583314, 3396021808, 2255452607, 3604688993, 2522064818, 668728789, 2635164176, 493723433, 1398836304, 3727225571, 3991515135, 490631758, 1540657983, 2507218155, 1719630719, 3480361982, 451631246, 1206940546, 1117328135, 2725694659, 4093695318, 3744207704, 3443227006, 3004387025, 3236900929, 3243351594, 1135794830, 1989582371, 3287884975, 3979461488, 2073908885, 3078326623, 3772539225, 4184830044, 4084496384, 1095528298, 209615871, 1013102723, 3578049974, 1901969299, 3988345635, 3183419049, 1683669069, 1774616592

아래 Python 3.12.3 코드로 모든 채점 데이터의 시드를 생성할 수 있습니다.

import random
random.seed("Lunatic Mine")
for _ in range(273):
    print(random.randint(0, 2 ** 32 - 1), end=", ")

힌트

언어별로 표준 출력 버퍼를 비우는 방법은 다음과 같습니다.

  • C: fflush(stdout)
  • C++: std::cout << std::flush
  • Java: System.out.flush()
  • Python: sys.stdout.flush()

예제2

  1. 예제 1

    입력
    123456789
    
    1
    
    1
    22 0 0 0 0 0
    
    1
    29 0 0 0 0 0
    
    1
    
    1
    129 0 0 0 0 0
    
    1
    186 0 0 0 0 0
    
    1
    139 0 0 0 0 0
    
    1
    133 0 0 0 0 0
    
    1
    192 0 0 0 0 0
    
    1
    195 0 0 0 0 0
    
    1
    14
    1
    7
    82
    13
    1
    
    1
    180 0 0 0 0 0
    
    1
    165 0 0 0 0 0
    
    1
    184 0 0 0 0 0
    
    1
    111 0 0 0 0 0
    
    1
    186 0 0 0 0 0
    
    1
    193 0 0 0 0 0
    
    1
    147 0 0 0 0 0
    
    1
    142 0 0 0 0 0
    
    1
    
    0
    
    
    예상 출력
    
    equip 1
    
    mine
    
    
    mine
    
    
    smelt
    
    mine
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    enchant
    
    
    
    
    
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    mine
    
    
    craft 1
    
    rank_up
    
    exit
    
  2. 예제 2

    입력
    입력이 매우 기므로 파일로 대체합니다.
    
    예상 출력
    출력이 매우 기므로 파일로 대체합니다.