길고 길었던 숭고한 연합캠프 후기

숭고한 연합캠프란??

후기를 쓰기에 앞서, 캠프를 정리하고자 한번 써봤다.

숭실대의 SCCC, 고려대의 ALPS, AlKor, 한양대의 ALOHA가 모여 기획한 알고리즘 캠프이다.

행사의 목적

  • 강의와 문제풀이를 통해 동아리원 개개인의 실력향상을 도모하면서 동시에 친목을 다지는 행사

  • 각 학교 알고리즘 동아리가 모여 공부 방법과 내용을 교류

행사 장소

한양대학교 서울캠퍼스 미래자동차연구센터

행사일정

8.6 ~ 8.9 : 세미나 8.10 : 연합 대회 8.11 ~ 8.12 : 엠티

각 행사 일정

세미나

총 4일간 진행되며, 총 3개의 분반으로 진행된다. 각 분반과 분반의 교육 기준은 다음과 같다.

  • 초급반 : 기본적인 C언어를 습득했으며, 알고리즘 공부를 처음 시작한 분반
  • 중급반 : 간단한 자료구조를 알고 기본적인 알고리즘에서 활용할 수 있는 수준의 분반
  • 고급반 : 알고리즘을 지속적으로 공부해서 ACM-ICPC 등 대회 입상을 목표로 하는 분반

세미나 강사의 경우는 각 동아리에서 3명씩 총 12명이 강의를 진행한다.

연합 대회

참가자

세미나의 분반에 따라 Beginner / Intermediate / Advanced division으로 나누어 진행한다. 참가자는 상위 분반을 2번 이상 들은 경우, 상위 분반 division에서 진행해야한다.

각 대회는 15명 내외정도 참가했다.

대회 환경

대회는 각 분반 강의실에서 진행되었으며, 돔저지로 대회를 진행하였다. 채점 가능 언어는 C, C++, JAVA가 있었고, 올해의 경우는 JAVA사용자가 없었다.

컴파일 옵션은 다음과 같다

C(GCC 6.3.0) : gcc -x c -std=c11 -Wall -02 -static -pipe -DONLINE_JUDGE -DDOMJUDGE -o "$DEST" "$@" -lm
C++(G++ 6.3.0) : g++ -x c -std=c++14 -Wall -02 -static -pipe -DONLINE_JUDGE -DDOMJUDGE -o "$DEST" "$@"

수상 기준 및 상품

고숙한 연합캠프에서는 디비젼 별로 각 동아리별 최상위 한 명을 성적 순으로 123등을 줬지만 올해는 대회 성적순으로 1,2,3 등을 줬다. 특별상도 포함되었는데, 특별상의 기준은 각 디비젼 별, 마지막 정답자와 최다 WA 후 AC를 기준으로 두었다.

상품의 경우에는 키보드, 이어폰, 마우스를 준비했는데, 1 2 3 등에게 순서대로 선택권을 주었다. 특별상은 USB.

출제진 / 검수진

문제의 출제는 대부분 강사가 출제하며, 추가적으로 몇 명이 문제를 출제할 수 있다. 검수는 강사진을 기본으로 하며, 마찬가지로 검수진 몇 명이 추가적으로 검수할 수 있다.

검수의 경우, 사전 돔 저지를 세팅하여 서로의 문제를 풀어보고 데이터와 시간, 메모리 등을 체크했다. 평균 3명 이상이 푼 경우에 문제 체크를 완료하였고, 채점현황과 검수표를 이용하여 전체 진행상황을 확인했다.

행사 내 나의 역할

  • 4개의 동아리 중 AlKor회장으로 운영진
  • 강사진 : 초급반 1일차 수업
  • 출제진 및 검수진 : 대회 출제 총괄

진짜 후기

행사 전

일단…

사실 숭고한 행사를 하기에 너무 지쳐있다는게 문제였다. 이번 방학은 구글 코드잼, 페이스북 해커컵, 탑코더 TCO, SCPC 예선/본선 , UCPC 예선/본선, 카카오 코드페스티벌 예선 등 작년보다 많은 대회를 진행하였다. (예선을 떨어질 줄 알았던 대회들을 다 본선을 붙으면서 대회가 2배 정도 된 듯 하다.)

물론 어떤 대회에서도 유의미한 성적을 못얻어서 심리적으로 지쳐있는 상태에서 숭고한 까지 진행한다는 것은 실제로 힘든 일이었다. 지금까지 공부했던 것에 대한 회의감이 가득한 상태였지만 회장이니까 어쩔 수 없지 하며 회의에 일단 나가긴 했다.

사전 회의

회의는 순조로웠다. 작년에 AlKor 부회장을 하며 이미 회의, 강의, 출제, 검수까지 상황을 알아서 그런것 같다. ALOHA가 HCPC라는 내전대회를 진행한 경험이 있어, 후원사나 전체적 진행 등 너무 잘해줬고 ALPS는 회장은 작년에 같이 고숙한을 진행했고, 부회장은 많이 참여해줬으며 SCCC는 회장이 중도에 바뀌는 등 어수선한 분위기 속에서도 부탁한 내용을 잘 진행해줘서 좋았다.

물론 SCCC 회장님이 캠프에 참여하지 않는 상황에서 마지막 회의를 사전에 알리지 않고 불참한 사실은…^^ 화는 났지만 행사 전이기에 너무 바빠서 그 화는 모두 증발해버렸다. 그래서 이 부분에 대해서는 문제출제에 포함하였다.

강사진/ 출제진

AlKor 부회장과 작년 학술부장이 커리큘럼에 대한 강의안, 출제안을 제공하면 이를 전달하고 체크하였다. 위에서 말했던 대로 대회가 많았기에 행사가 촉박했지만 다들 어떻게든 잘 진행하였다.

강사진들에게 기한을 공지하지 않고, 행사 직전에 출제 기한을 7일정도로 줬다. 이 부분에 대해서는 다른 강사분들에게 죄송하지만, 행사 직전이라 더욱 독촉했던 것 같다. 하지만 독촉하지 않았다면 대회는 터졌겠지…

대회 직전에 서버도 못열었기 때문에 대회가 터지는 줄 알았다.

1일차

1일차는 전체 OT와 초급반 강의를 맡았다.

운영진은 미리모여 작업을 진행하자고 하였지만, 대부분 지각하였고 나도 지각했다.

시작 직전

우선 강의실과 컨퍼런스 홀의 위치를 첫날에 배치 받았다. 작년에는 다른 층, 다른 건물 등 전체적인 불편함이 있었지만, 올해는 1층에 다 몰려있어서 편했다.

명찰작업이 생각보다 오래걸려서 조금 불안하긴 했지만, 이건 뭐 큰 문제는 아니었다.

가장 큰 문제는 다과였는데, 다과 지원의 경우 삼성 소프트웨어 멤버십에서 지원을 받기로 했는데 준비과정에서 연락을 깜빡하여 월요일 지원을 못받았다. 하지만 다과가 없으면 7시간 강의 진행이 어렵기에 다과는 SCCC와 ALPS부회장(전체총무)가 따로 사왔다.

전날까지 대회 문제 준비와 강의자료, OT자료를 준비해서 정신없는 스타트였다.

OT

OT는 뭐 큰 문제는 없었지만, 오랜만에 사람들 앞에서 발표하려니 긴장됬다. 그래도 첫 날이라 다들 집중해줘서 잘 넘어갔다.

강의

초급반 1일차 강의의 주제는 PS기초였다. 개인적으로 생각하기에 PS를 시작하는 새내기들에게 가장 필요한 건 연습이라고 생각한다. 문제를 읽고 문제를 분석하는 능력은 일단 많은 문제를 읽고, 보고, 풀어봐야한다고 생각한다.

강의는 다음과 같은 생각을 키워주는 것을 목표로 하고 진행했다.

  • 문제가 어떤 정보를 요구하고 있는가?
  • 문제를 읽고 알고리즘을 떠올렸을때, 시간제한과 메모리제한에 충분한가? (Big O notation)
  • 틀렸을때, RTE, MLE, TLE 등을 통해서 어떤 부분을 보충해야하는가?
  • 문제에서 overflow가 발생할 여지가 있는가?
  • 입력에서 자료형을 자유자제로 다룰 수 있는가?
  • 배열에서 visited 또는 checked 와 같이 입력 후 전처리가 가능한가?
  • gcd, lcm, 진법, nCr 등 수학적인 지식을 코딩을 통해 적용할 수 있는가?
  • STL 소개

6~7시간동안 20문제 정도를 준비하고 진행을 하였다. 초급반 기준으로 살짝 어렵게 진행하였기에 모두가 고통받았지만 강의 내용면에서는 꽤나 만족을 한다. 쉬운걸 공부하기 위해 캠프를 올 필요는 없으니까.

뒤풀이

요즘 운동을 하고있어 술은 정말 안마시려 했지만, 친해질 겸 맥주나 한잔할까 라는 생각이 판단 미스였다. 분명 작년에도 ALOHA와 마시고 큰 코 다쳤으면서, 긴장의 끈을 놓치다니 어리석었다..

ALOHA식 소맥은 아주 강력했다.

ALOHA식 소맥 : 맥주에 소주를 넣고, 반쯤 마시면 또 소주 한 병 넣고 … 무한루프

집들어간 기억은 gone… 하지만 근 1년 중 가장 즐거운 술자리였다. 좋은 사람들과 마시는 술은 너무 달자너~

2일차

뒤풀이의 여파는 강력했다. 못오는 사람들과 와야할 사람들 모두 안와버리는 참사

원래 안갈려했지만 마스터키를 내가 챙긴바람에 해장도 못하고 갔다. 근데 갔더니 열어줘야할 문들을 이미 관리자 분들이 다 열어주고 가서 내가 필요없었다. :thinking-face: 운영진 아무나 오면 해장하러 갈까 싶었는데 아무도 안와버리는…ㅁㄴㅇㄹ 결국 편의점에서 죽하나 사먹고 버텼다.

후원사

2일차에는 현대 오토에버에서 설명회가 예정되어 있었다. 또한 삼성 소프트웨어 멤버십에서도 다과 지원이 예정되어있었다. 하지만 이 두 곳이 동시에 와버리는 사태가 발생해서 너무 당황스러웠다. 이때는 몸이 두개이길 바랬다.

현대 오토에버에서는 당일 저녁식사를 건물 지하1층 바에서 제공을 해줬는데, 피자가 맛있었다. 피자해장은 별로 좋아하진 않지만 나름 괜찮았다. 오신 분들이 배고프지 않냐며 2개 사주시고, 다음에 동아리에서 행사진행하면 연락하라 하셨는데 고려대 프로그래밍 경진대회를 열면 연락해야겠다.

삼성 소프트웨어 멤버십은 안그래도 SCPC 본선을 말리고 와서 슬펐는데, 저번에 얼굴을 본 분이라서 살짝 씁쓸했다. ㅠㅠ 하지만 마지막에 인사하면서 꼭 들어오라고 응원받아서 기분이 좋다. 아마 내년에는 들어갈 수 있지않을까 기대해본다.

검수 진행

문제가 다 안만들어져있고, 돔저지는 준비가 안되었고, 문제지 통합도 안되어있는 상황 하지만 나도 몸상태가 너무 안좋았기에 진행하지 못했고 밤샘각이 잡히고 있었다.

3일차

3일차부터는 대회준비에 초점을 뒀다. 왜냐하면 대회가 잘못하면 터질 각이 잡혔기 때문.

AlKor 부회장 최고

AlKor 부회장(@evenharder)이 아니었다면 정말 이 대회는 터지지 않았을까 싶다. 문제 제작 현황 표와 문제지 통합, 데이터 포맷 체크, 출제진 solution 및 지문 체크 … 그 외 다양한 일을 했지만 정말 나에게는 구세주였다. 내가 운영에 바빠 신경쓰지 못한 부분을 검수해주고 있었다. 오프라인으로는 3일차가 처음이지만 그전에도 강의안과 BOJ 연습셋 제목 포맷 등 계속 일하고 있었다. 난 작년에 이렇게 일 못했는데, 대단하다는 생각밖에 들지 않았다.

내년 회장 예정이기에 2019 AlKor가 매우 기대된다.

검수 시작

3일차부터는 서버를 서버담당(@0xrgb)가 자신의 데스크탑으로 서버를 열어 채점을 진행할 수 있었다. 돔저지 시스템은 icpc에서 써봤는데 너무 어색했다. 그 이유는 지금까지 내가 주도적으로 제출을 진행한적이 없기때문…반성하고 반성하자. 쨋든 검수는 강사진을 모두 불러 문제를 담당하고 제출하면서 데이터를 체크하는 방식으로 진행하였다. 목표는 1문제당 최소 2명 solve.

일단 문제가 완성되는 순서대로 문제를 풀었고, 저녁쯤에는 문제의 절반정도가 올라왔다. 초급반 문제의 경우에는 모든 문제를 풀었고, 고급반도 당일 올라온 문제에 대해서는 절반정도 풀었다. 검수 결과 모든 디비젼이 헬셋인걸 알았다.

강사분들이 자꾸 어려운 문제를 안풀어서 어쩌지 싶었지만 아직 4일차가 남아있어 그 날은 마쳤다.

MT 준비

MT경우, 프로그램들을 SCCC가 해결하기로 했지만 하나도 준비한게 없어 우리가 또 준비해야했다. 검수가 끝나고 3명이서 회의 결과, 폰코딩 2진수표현하기 등 여러가지를 이야기했지만 결론적으로는 퀴즈 맞추기로 결정됬다. 45명 정도 예약했는데, 신청인원이 자꾸 줄어서 고민이었다.

4일차

이제 내일이 대회기 때문에 모든 힘을 검수에 쏟았다.

서버

0xrgb가 돔저지를 준비하면서 너무 많이 밤을 새서 미안했지만, 어쩔 수 없이 일을 시켜야만 했다. 돔저지서버에 aws로 5개정도 서버를 추가적으로 붙이라고 했고, 이 후부터는 채점속도에는 큰 문제가 없었다.

검수최종

이 날 당일 데이터가 완성된 문제가 3개, 추가된 문제가 1개, 데이터 오류 발생 문제가 1개였다. 추가된 문제는 초급반 90%가 풀도록 의도된 문제로 내가 출제했다. 강사진 6명정도가 계속 문제를 풀고있었기에 당일 데이터가 완성됬지만 대부분 2명 이상이 풀었다.

대회는 총 18문제가 준비되었고 총 12문제를 풀었다. 근데 내 문제가 4개 였기때문에 데이터 만드는 게 더 일 이었다. 노란색은 제출, 초록색은 검수, 회색은 안(못)푼 문제다.

문제현황-수빈

작년에 강사할때는 정말 고급반 검수는 거의 못한 것 같은데 성장한 것 같아서 뿌듯했다. 그토록 원하던 고인물이 되고 있는건가…

대회

대회 직전

일단 ALOHA 부회장님과 문제지 출력을 하고, 운영진방에서는 대회 오는 사람들을 돔저지에 미리 등록하는 작업을 진행했다. 분명 방법이 있을텐데 수작업으로 해서 너무 비효율적이었지만 급한대로 진행했다.

대회직전에 서버가 급 느려지는 바람에 segment문제가 정해가 TLE가 발생하였고, 그에 따라 데이터를 수정하느라 출제자와 @evenharder가 고생했다.

사람들이 너무 안와서 출제진 입장에서는 슬펐다. 대회는 원래는 1시부터로 예상했지만 결국 2시부터 시작했다. 이 날 감독하기로 한 강사진들도 다 지각해서 화가 날뻔했지만 대회 당일 날이라 또 진행해야하니 넘어갔다.

대회진행

초급반을 제외하고는 생각보다 참가자들이 문제를 못풀어서 아쉬웠다.

그리고 @godusheep 이 subinium이란 닉네임을 달고 대회를 진행했는데, 자꾸 틀려서 화났다. ㅂㄷㅂㄷ

대회가 진행되는 도중에는 풀이 PPT를 만들었는데 생각보다 오래거렸다. 한 3시간??

한 12문제 정도는 한줄풀이를 직접 작성하고, 나머지는 강사진들에게 부탁해서 적었다.

대회 결과

대회 결과가 AlKor가 각 디비전 별로 2명씩 수상해서 좋았다. 고급반은 1등은 놓쳤지만 그래도 만족스로운 결과였다. 나중에 스코어보드나 올려야겠다.

MT

MT는 결국 19명이 갔다. 45명 예상하고 장소를 잡고, 30명 최종인원으로 음식을 샀는데…

5000원 내고 3만원정도 MT를 간듯하다.

MT 레크레이션

MT에서는 퀴즈 맞추기 레크레이션을 진행했는데 문제는 다음과 같다.

  • 각 대학교의 세워진 연도
  • 각 대학교의 교화/교목
  • 각 대학교 역에서 가까운 순서대로 나열
  • 각 대학교 지하철 호선
  • 세 대학교의 페르마 포인트(4지선다)
  • 8대 숭실대 총장님 이름 맞추기
  • 15대 고려대 총장님 이름 맞추기
  • 사람 사진보고 이름맞추기 (튜링, 다익스트라, 데니스 리치, 8대숭실대총장)
  • 몇 명의 IDE맞추기 (메모장, xcode, vs code)
  • 지훈이의 담배이름과 뒤풀이에서 나온 담배이름
  • 욱제가 잃어버린 폰의 기종

원래 의리주를 벌칙으로 할라했는데 놀다보니 까먹었다.

마치며

대회에 지치고, CP에 대해서 회의감을 느끼고 있던 중 신선한 자극이 됬던 캠프다.

또한 지금까지 어떤 행사에 있어 총 책임자의 역할이었던 적은 없었던 것 같다. 항상 부책임자 정도..? 의도와 다르게 총책임의 역할을 부분부분하게 되어 성장한 느낌도 있다. (척박한 환경 속에 강하게 자라는 내 자신 기특해~^^)

아직 실력이 부족하기에 검수도 불안했고, 강의도 불안했고 모든게 불안했지만 별 탈없이 행사를 마칠 수 있어 행복하다.

가장 좋은 건 좋은 사람들을 알게됬다는 점이다. 이 만남을 계속이어가면 좋겠다.

조금 더 실력이 된다면 다른 동아리에도 세미나에서 강의를 하고 싶다. 뭔가 더 큰 프로젝트성 행사도 진행해보고 싶지만 아직 실력이 부족하니 실력을 키우고자 한다. 앞으로 어떤 프로젝트를 진행할 수 있을까 고민해봐야겠다.

우선 방학동안 꽤 달렸으니 당분간은 여유롭게 방학을 보내야겠다.

Leave a Comment