PS/후기

2026 인하대학교 프로그래밍 경진대회 (IUPC) 출제 및 운영 후기

la_apin 2026. 5. 27. 14:45

📸 by @plan_pt


IUPC 2025에서 우승하며... 더 이상 IUPC에 참가할 수 없게 되어버렸습니다.

그러던 중 감사하게도 @Encore 님께서 올해 대회 운영 및 출제를 제안해 주셨고, 덕분에 IUPC 2026의 운영진으로 참가할 수 있었습니다. (감사합니다 🙇🙇)

아래는 올해 대회를 준비해 주신 출제 및 운영진, 도움을 주신 분들입니다. 다시 감사드립니다.


대회 준비

크아아악

... 그렇습니다.

열심히 대회를 준비하고 있던 4월 경, 대회를 개최할 것으로 계획해 둔 백준 온라인 저지가 갑자기 문을 닫아버렸습니다.

그렇다고 몇 개월 동안 준비해 온 대회를 없던 걸로 만들 수도 없고,
어쩌면 올해 대회를 바라보며 수개월 전부터 준비해 왔을 참가자 분들에게도 말이 안 되는 이야기라 어떻게든 대회를 진행시켜야 했습니다.

그렇게 여러 옵션을 두고 다양한 방법을 찾던 중...

:blobaww:

@dongggle 님께서 교내 대회인 i-PAC을 담당해 주시는 교수님께 도움을 받을 수 있는지 연락을 드리게 되었고,
연구실에서 흔쾌히 남는 서버를 지원해 주셨습니다...!

심지어 서버는 이미 DOMjudge 환경이 전부 준비되어 있는 상태였고,
준비해 둔 문제만 옮기면 바로 대회 진행이 가능한 환경이었습니다.

이 외에도 대회 전, 중 몇몇 이슈로 급하게 연락을 드렸지만 매번 적극적으로 알아봐 주시고, 도와주셨습니다...

이번 대회를 있게 해 주신 알고리즘 및 응용 연구실 및 구성원분들께 깊이 감사드립니다.
정말 감사합니다.


대회 출제

인생 첫 출제로 참여하며 다양한 아이디어를 제안드렸고, 감사히도 그중 하나가 채택되어 I번을 출제하게 되었습니다!

아래는 각 문제별 후기입니다.
일부 문제의 스포일러가 포함되어 있습니다.

A. 5그와트

더보기

@cmgjol010 님께서 출제해 주셨습니다.

분명 학교를 다닌 지가 N년 째인데도, 여전히 5호관 계단은 혼란스럽습니다.

B. 흑흑요리사

더보기

@dongggle 님께서 출제해 주셨습니다.

B의 상한이 100 임을 관찰하여 완전탐색을 하는 문제입니다.

완전탐색 대신 결정론적인 식으로 접근하며 틀리는 분들이 조금 있어 약간 안타까웠습니다...

C. BLACK or WHITE?

더보기

@wjdclgns12 님께서 출제해 주셨습니다.

경우의 수를 나눠 직접 푸는 방법도 존재하지만...

입력에 모순이 없음이 보장되기 때문에 각 색깔의 모자를 한 번씩 써 보고, 둘 다 말이 되는지, 하나만 말이 되는 지를 판별하는 것으로 충분합니다.

하지만 이 풀이도 결국 경우의 수를 나눠 얻는 결론과 동치가 되지만, 이러한 관찰도 조금은 도움이 되지 않을까 싶어 짧게 소개해봅니다.

D. 도망치는 기계오리

더보기

@plan_pt 님께서 출제해 주셨습니다.

문제를 보고 무조건 bitmask DP라고만 생각했는데, 검수 과정에서 bitmask BFS 풀이를 보며 아직 배울게 한참 남았다는 걸 배운 문제입니다.

E. IUPC 찾기

더보기

@cmgjol010 님께서 출제해 주셨습니다.

PS 입문자분들께 "격자를 실제로 만들지 않고 어떻게 판별할 것인가"를 물어보는 상당히 교육적인 문제라고 생각합니다.

F. CTP 경로

더보기

@dongggle 님께서 출제해 주셨습니다.

이 셋의 최종보스를 담당하고 있는 F번입니다.
IUPC 2021 J번에 보내는 답장 같은 문제라고 느껴졌습니다. 대신 이번에는 무자비하게 강화된...

저는 검수 과정에서 리루팅과 조합론이 섞인 3천 바이트짜리 무언가(?)로 해결했었는데, 다른 분들은 더 짧은 풀이를 제시해 주신 걸 보면 제가 뭘 놓치고 있는 걸지도 모르겠습니다.

다시 확인해 봐야겠습니다...

G. 삼각형 만들기

더보기

@dongggle 님께서 출제해 주셨습니다.

처음에 이 문제를 건의하실 때 제시해 주신 풀이가 사실 그리디(!)였습니다.
그러다 약간의 관찰이 가미된 DP 풀이가 발견되어 그게 정해가 되었습니다.

DP에 필요한 상태 공간의 크기를 보이는 부분이 너무 우아했던 기억이 납니다.
그리고 전 여전히 그리디 풀이가 왜 성립하는지 이해하지 못했습니다...

H. 점프덕

더보기

@cmgjol010 님께서 출제해 주셨습니다.

저는 많이 어려웠었습니다.

특수한 그래프의 Min cut을 찾는 문제였는데, 그래프 특성상 어떤 그리디? 애드훅? 이 성립해서 그걸 증명, 구현하는 문제였습니다.

이렇게 구성하는 게 최적이다 감을 잡아나가는 시작점도 찾기 어렵고, 그 증명은 한 단계 더 어려웠었습니다...

아니 이거 진짜 플래가 맞는데

:blobfearful:

I. max를 아끼는 법

더보기

제가 출제했습니다!

USACO 2025 January Silver 3번을 변형해 보다가 만들어진 문제입니다.

맨 처음에는 임의의 행렬이 있을 때, 행 또는 열에 max를 써서 무언가 만들 수 있는지 판별하는 문제를 생각해 봤으나...
뭔가 좀 어려워지는 것 같아 행렬 대신 배열로 완화하게 되어 탄생하게 되었습니다.

초안은 A에서 B를 만들 수 있음이 항상 보장되는 문제였으나,
@wjdclgns12 님께서 불가능한 경우도 추가하자는 의견을 주셔서 지금의 모습을 가지게 되었습니다. (감사합니다)

아쉬운 점이라면... 검수 과정에서 거의 똑같은 문제가 발견되어 세상엔 정말 다양한 문제가 있구나 생각해 보게 되었습니다.

제 문제에 제출해 주신 모든 분들께 감사드립니다!

J. 기억을 잃는 스택

더보기

@wjdclgns12 님께서 출제해 주셨습니다.

학교 자료구조 실습 시간에서 나올법한 교육적인 스택 문제입니다.

많은 분들이 해결해 주시는 걸 보며, 그래도 자료구조 과목을 다들 열심히 들어주셨구나 생각해 본 문제입니다.

K. 미생물

더보기

@Encore 님께서 출제해 주셨습니다.

본 대회에서 올킬을 달성한 의문의(?) 최종 보스입니다.

위치상 E, J번을 잇는 실버 정도의 문제였으나, 아무도 제출해주시지 않으셨습니다.
지문이 무섭게 생기기도 했고, 얼핏 보면 기하문제구나 싶어서 다들 건너뛰고 다른 걸 잡으신 게 아닐까 싶은...

일정을 마치고 뒤늦게 돌아온 출자제분께서 오열하셨다는 후문이 있습니다.

기하 혐오를 멈춰주세요 여러분...

L. Artificial Ascent

더보기

@Encore 님께서 출제해 주셨습니다.

어려운데, 적절히 어려운 케이스워크 그리디 문제입니다.

사실 L번이 좀 늦게 풀리겠다 예상했었는데... 생각보다 빨리 해결해 주셔서 놀랐던 기억이 납니다.

케이스워크 연습하기에 최적의 문제라고 생각합니다!


여담

작년 대회를 참가할 때만 해도 운영해 주시는 분들이 많이 고생해주셨겠구나 싶었지만...
실제로 운영진분들이 들이는 노력은 상상 이상이었습니다.

단 하루 5시간의 대회를 위해 수개월 전부터 문제를 준비하고, 장소를 준비하고,
적절한 보상이 없음에도 단지 하고 싶다는 이유로 모인 분들의 시간과 노력으로 만들어지는 게 이런 대회라는 걸 체감하는 오늘입니다.

저는 이게 첫 출제 및 운영이었는데도, 도움을 주신 다른 분들은 매년, 어쩌면 수개월마다 이걸 반복하신 걸 생각하면 보면 다시 감사드릴 수밖에 없는 것 같습니다.

가능한 여러 대회에 참가해 보는 것이 그런 감사를 표현할 수 있지 않을까 생각해 봅니다.


IUPC 2026에 참가해 주신 분들, 도움을 주신 분들 모두에게 감사드립니다!