競プロサークルの話

この記事は「競プロ!!」 競技プログラミング Advent Calendar 2017の8日目の記事です.投稿が遅れて申し訳ありません

adventar.org

この記事では弊学の競プロサークルで行っている活動について書きたいと思います.

新入生勧誘

2年前までは所謂新歓期にサークル員の勧誘は行っておらず,プログラミングや数学が得意そうな学生を直接スカウトする仕組みでした.しかし競プロサークルがあまり認知されていない*1こともあって,中々新しい人は入っていきませんでした.実際自分の1年下の学年は僕が2年生になるまで誰一人いませんでした.
そこで弊学で4月の新歓期にブースを構えてチラシを配布することにしました.これまでチラシ作りに関するノウハウがなかったので苦労しましたが以下のようなチラシを作って配布しました*2.100枚印刷していましたが,50枚も配布できなかったのでもっと少なくていいと思います.配布枚数とサークル員のコミュ力には正の相関があると思うので来年以降は見定めてください.

この効果もあって2016年度は10人以上,2017年度は7人ぐらいが興味を示してくれました.2016年度当初の2年生以上のサークル員の数は5人だったので急に増えて驚きました.このことが前期の活動内容に大きく影響します.

前期

前に書いた通りたくさんの1年生が入ってくれました.その1年生の殆どはプログラミングについて知らず,サークルとしてプログラミングとはなんぞやということを教える必要に迫られました.しかしこれまでは,優秀そうな学生をスカウトするという方針だったため,チラシ同様にプログラミングを教えるというノウハウがありませんでした.
2016年度は幸いにも自分の同期が,他の部活で1年生にC言語を教えていた経験があり彼に頼むことにしました.内容としてはC言語の基本的な文法などを抑えた後,C++の便利な機能を紹介するというものでした.人数が多くなったためパソコンの数も足りなくなり部室*3で活動を行うことを諦めて,大学の演習室を借りて行いました.
2017年度は自分がC++を1年生に教えました.1人で毎週勉強会用のパワポを1から作るのは大変だったので,なんとかして分業する or 手を抜く方法を考えたほうがいいです.日程は以下の通りでした. f:id:odan3240:20171213232158p:plain

1回の勉強会の流れは,その日扱うトピックについて紹介→バチャコンでそのトピックに関する問題を解いてもらうでした.バチャコンを使うことで誰がどの問題にハマってるか確認しやすかったです.バチャコンに使う問題はRiPProの方からABCのAB問題に対して,C++のどの文法の知識を使えばいいかタグ付けされた問題リストを頂いていたので,それを参照して選びました.
一応ACM-ICPCの国内予選のA問題は解けるようになって欲しいと思っていましたが,1年生に国内予選の感想を聞くと難しかったようです*4.どうすればプログラミング未経験者を数ヶ月でA問題を解けるようになってもらうかも今後の課題です.
C++勉強会用に作ったスライドはクオリティの高いものではないので,一般公開する予定はないのですが,同じようにサークルで1年生向けに勉強会を開く時に使いたいという人がいれば差し上げます.

これまでは週1の活動だったので,1年生向けにプログラミングの講習会を開くと自分たちの勉強会が消えてしまいました.そこで上級生向けの勉強会を別の日に行うことにしました.この勉強会はバチャコンを開催し問題に取り組み,その後問題をどう解いたかを話し合う形式です.

後期

まず,前期にたくさんいた1年生はほとんど来なくなりました.これはある程度は仕方ないと考えています.

2016年度より後期は週ごとにアルゴリズムかデータ構造と担当を決めて,輪講形式の勉強会を開きました.これはせっかく集団で競プロをやっているので何かしらの知見を共有したいとの理由で始めました.2017年度のスケジュールは以下の通りです.

f:id:odan3240:20171213233738p:plain

しかしこれも難しいなあと感じます.

それと前期同様に皆で集まってバチャコンの問題を解く勉強会も別の日にやっています.

最近

もうちょっとサークルらしくしようという声が上がり,その一つとしてロゴを作りました.作成には Build a Website - Squarespace を使いました.

f:id:odan3240:20171213234424p:plain

このアイコンは皆でコンペした結果wheson氏が作ったものが採用されました.

twitter.com

他にもロゴのステッカーも作る話や,外部向けのサークル紹介サイトを作る話が挙がっています.続報があればここに追記するかもしれません.

おわりに

弊学の競プロサークルの活動についての紹介をしました.自分が認識している問題点とはしては以下の通りです.

  • 数ヶ月でICPC国内予選A問題を解けるようになるには
  • 1年生から4年生まで全ての人が嬉しい輪講形式の勉強会の方法

いつか改善されてほしいですね.

ここまで書いていてあれですが,実は弊学には競技プログラミングサークルはありません.どういうことかというと,自分の所属している競技プログラミングをする団体はサークルや部活ではなく,学生プロジェクトというものに分類されているため厳密にはサークルとは異なります.やってる内容自体はサークルと変わりないのですが,部費がタダだったりRUPC,JAG夏合宿などに参加するために大学から金銭的な援助が得られるので色々お得だなあと思いながら活動しています.ただ,他の人に紹介する時に手間なのでいつもサークルだと言い張っています.

*1:大学の掲示板にチラシが貼ってあるだけ

*2:2017年度版,2016年度のはどっかいった

*3:厳密には違う

*4:それはそう