도구스학업·수학

활동 선택 문제 계산기

시작·끝 시각 목록에서 겹치지 않게 가장 많이 고르는 조합을 찾습니다. 끝나는 시각이 이른 것부터 고르는 탐욕이 왜 최적인지, 다른 기준은 왜 지는지 세 방식을 나란히 돌려 보여 줍니다.

활동 (한 줄에 «이름 시작 끝»)

«회의 9:00 10:30» 처럼 적습니다. 이름은 없어도 되고, 시각 대신 «1 4» 같은 숫자를 써도 됩니다. #으로 시작하는 줄은 건너뜁니다.

끝나는 시각이 이른 것부터 골랐을 때

5개

이 답이 최적입니다 · 전체 8개 중

끝나는 시각이 이른 것부터5개
시작 시각이 이른 것부터5개
소요시간이 짧은 것부터4개
모두 배정하려면 필요한 방2개
기획회의
9:00~10:30
면접
10:00~11:00
주간점검
10:30~11:30
외부미팅
11:00~13:00
코드리뷰
11:30~12:30
교육
13:00~16:00
1on1
15:30~16:00
회고
16:00~17:00
끝나는 시각이 이른 것부터 고르면 반드시 최적입니다. 끝이 이르다는 것은 남는 시간이 가장 많이 남는다는 뜻이라, 뒤에 올 기회를 가장 덜 갉아먹습니다. 어떤 최적해가 있더라도 그 첫 활동을 «끝이 가장 이른 것»으로 바꿔치기 할 수 있고 개수는 그대로이므로(교환 논증), 이 방식이 최적임이 증명되어 있습니다.
순서활동구간판정
1기획회의9:00~10:30고름
2면접10:00~11:00기획회의(9:00~10:30)과 겹칩니다
3주간점검10:30~11:30고름
4코드리뷰11:30~12:30고름
5외부미팅11:00~13:00주간점검(10:30~11:30)과 겹칩니다
6교육13:00~16:00고름
71on115:30~16:00교육(13:00~16:00)과 겹칩니다
8회고16:00~17:00고름
다른 기준은 반례가 있습니다. 시작이 이른 것부터 고르면 9시부터 18시까지 이어지는 하루짜리 하나가 짧은 회의 여럿을 통째로 막습니다. 소요시간이 짧은 것부터 고르면 두 활동의 경계에 걸친 짧은 것 하나가 양쪽을 동시에 죽입니다 — [0,5] [4,6] [5,10]에서 가장 짧은 [4,6]을 고르면 1개, 끝 기준으로 고르면 2개입니다.
«방을 몇 개 쓸까»는 다른 문제입니다. 여기서 고른 5개는 방 하나에 넣을 수 있는 최대 개수입니다. 모두 받되 방을 최소로 쓰려면 «한 시점에 동시에 겹치는 최대 개수»만큼 필요하며, 이번 입력에서는 2개입니다.
앞 활동의 끝과 뒤 활동의 시작이 같으면 겹치지 않는 것으로 봅니다. 10시에 끝나는 회의와 10시에 시작하는 회의는 이어서 할 수 있습니다. 이동 시간이 필요하다면 끝 시각에 그만큼 더해서 넣으세요.

계산 방법

  1. 1활동을 한 줄에 하나씩 «이름 시작 끝»으로 적습니다. 9:00 10:30처럼 시각으로 써도, 1 4처럼 숫자로 써도 됩니다.
  2. 2고르는 기준을 바꿔 가며 개수가 어떻게 달라지는지 봅니다.
  3. 3막대 그림에서 어떤 활동이 뽑혔는지 확인합니다.
  4. 4판정 표에서 뽑히지 않은 활동이 무엇과 겹쳤는지 봅니다.

자주 묻는 질문

끝나는 시각이 이른 것부터 고르면 됩니다. 남은 활동 중 끝이 가장 이른 것을 고르고, 그것과 겹치는 것을 버리고, 다시 되풀이합니다. 이 방식이 최대 개수를 낸다는 것이 증명되어 있습니다.

교환 논증으로 증명합니다. 어떤 최적해가 있다고 할 때 그 첫 활동을 «끝이 가장 이른 활동»으로 바꿔치기해도 뒤에 오는 활동들과 여전히 겹치지 않습니다. 끝이 더 이르거나 같기 때문입니다. 개수가 그대로이므로 끝이 가장 이른 것을 포함하는 최적해가 반드시 존재하고, 나머지에 같은 논증을 되풀이하면 됩니다.

최적이 아닙니다. 짧지만 두 활동의 경계에 걸친 것 하나가 양쪽을 동시에 죽일 수 있습니다. [0,5] [4,6] [5,10]에서 가장 짧은 [4,6]을 먼저 고르면 1개밖에 못 고르지만, 끝 기준으로 고르면 [0,5]와 [5,10] 2개를 고릅니다.

길이가 긴 활동 하나가 짧은 여럿을 통째로 막기 때문입니다. [0,10] [1,2] [3,4]에서 시작이 가장 이른 [0,10]을 고르면 나머지가 모두 겹쳐 1개로 끝나지만, 끝 기준으로는 [1,2]와 [3,4] 2개를 고릅니다.

그것은 다른 문제입니다. 모두 배정하되 방 수를 최소로 하는 문제의 답은 «한 시점에 동시에 겹치는 최대 개수»입니다. 이 계산기도 함께 내 주며, 겹치는 최대 개수만큼 방을 두면 모든 활동을 배정할 수 있습니다.

겹치지 않은 것으로 봅니다. 10시에 끝나는 회의와 10시에 시작하는 회의는 이어서 할 수 있습니다. 이동이나 정리 시간이 필요하다면 끝 시각에 그만큼을 더해서 넣으면 됩니다.

전송되지 않습니다. 모든 계산은 브라우저 안에서 이뤄지고, 입력값은 이 기기에만 남습니다.

알아두면 좋은 점

  • 모든 활동의 값어치가 같다고 봅니다. 활동마다 중요도가 다르면 «개수»가 아니라 «값의 합»을 최대로 하는 문제가 되고, 그때는 탐욕이 아니라 동적 계획법(가중 구간 스케줄링)을 써야 합니다.
  • 활동은 40개까지 넣을 수 있습니다.
  • 시각은 24시를 넘겨 적어도 됩니다(예: 26:00은 다음 날 새벽 2시). 다만 날짜는 다루지 않으므로 여러 날에 걸친 일정은 분 단위 숫자로 바꿔 넣어야 합니다.
  • 같은 개수를 내는 조합이 여럿일 수 있습니다. 이 계산기는 끝이 이른 것을 먼저 고른 조합 하나를 보여 줍니다.

함께 보면 좋은 도구

마지막 검증: 2026년 9월 1일 · 결과는 참고용 추정치입니다.