원래는 M에 오차가 있다는 게 문제를 어렵게 만드는 거라 이 글은 쓸모 없을 수도 있는데, 이 글이 디딤돌이 될지도 몰라서 올려봄.
M에 오차가 없고 M이 충분히 큰 경우 가능하다는 것만 증명했음. M이 작으면 원글 기괴공학도 댓글처럼 불가능할 수도 있음. 알고리즘까지 알고 싶으면 증명을 따라가면 되지만, 쓸모 있을지 없을지 모르는 정리의 증명을 읽는 건 시간낭비 같고 이걸 활용할 방법이 떠올랐을 때만 증명을 읽어보든지 하면 될 듯.
내가 제대로 이해했다면 배가 2~4대이든 1대이든 차이가 없음. 따라서 배는 1대라고 할 것임. 그리고 m1 = m-100, m2 = m 이라 하면, m1과 m2 중 하나씩 택해서 더해가는 작업을 홀수 번 했을 때 M 미만, 짝수 번 했을 때 M 이상이 되게 만들면 됨. 즉, n1 + n2 가 홀수이면서 n1m1 + n2m2 가 M - m2 이상, M 미만인 두 자연수 n1, n2 를 구하기만 하면 됨. 질량 m1인 상태로 n1번, m2인 상태로 n2번 배를 통과시키면 n1m1 + n2m2 는 M 미만이니까 웜홀이 붕괴되지 않고, 질량 m2인 상태로 한 번 더 통과시키면 n1m1 + (n2+1)m2 는 M 이상이니까 웜홀이 붕괴되기 때문임.
호고곡 고마워. 근데 우리가 게임에서 겪는 문제가 질량이 확실한 웜홀을 붕괴시키는 것 보다는 어떻게 M의 범위를 좁히냐라서.. 일단 올려준 증명의 방법은 문제를 간결화하는데 도움이 된거같음 ㄳㄳ
일단 더 나은 정리를 올리긴 했음 근데 니가 원하는 결정적인 걸 (M의 범위를 좁히는 것) 못했네