SWEの@tobisatisより、競技プログラミング部の活動報告をお届けします。 部内で、初めてのLT会を開催しました。LTはlightning talkの略で、短い時間のプレゼンテーションを行うことをいいます。 今回は、4名の部員にひとり約10分で発表をしてもらいました。それぞれの発表について、簡単に紹介します。
競プロに特化したIDE
競プロに特化した自作IDEについて発表してもらいました。こちらに公開されています。
外観はこのようになっており、画面を切り替えず使える並列のレイアウトが印象的です。 発表では、例えば次のような機能について実演してもらいました。
- サンプルケースの自動実行。手動で入力して目視で出力をチェックする、といった手間が省けます。問題数が多いAtCoder Beginner Contestなどでは特に便利に見えました。
- 問題文の入力ケースからグラフを可視化する機能。数クリックで頂点とその番号、辺とその重みを描画できます。
上のリンクから、ぜひ他の機能もチェックしてみてください!
開発者fukataniからのメッセージ:
「現在、コード補完に使用しているracer-rustがdeprecatedになったことより、ビルド不能となっておりまして、代わりの補完ライブラリを導入にチャレンジしてくださる方、PRウェルカムです!」
C言語コンパイラ自作に取り組んでいます
C言語のコンパイルについて発表してもらいました。自作したコンパイラの話を通して、コンパイルの仕組みや言語によるパースの難しさの比較などがわかりやすく説明されていました。社内の他の部活の話やChatGPTの話も聞くことができました。
https://docs.google.com/presentation/d/1QK2N86194IaF855MTtSbLb6bdjxUsxszPceyZleOR5U/edit?usp=sharing
1万倍高速化
競プロにおける高速化について発表してもらいました。普段Rubyでコンテストに出られているプレイヤーならではの定数倍高速化の知見が、競プロ典型90問の1問を例に紹介されていました。タイトルは「1万倍高速化」。モノグサではRubyを1万倍高速化できる技術を習得できるかもしれません!
https://docs.google.com/presentation/d/1Oy6jQrn1mle_0iYOIJbpFp8-IU0WZYt76Lzf8B-b4o8/edit?usp=sharing
競プロ作問を支える技術
競プロの作問で活躍されているtsutajさんに、その難しさや便利なツールについて発表してもらいました。コンテストに出場しているだけだとわからない運営の作業を知る貴重な機会でした。
スライドはこちら↓
マニアックな部分とかを加筆してアップロードしました!
— tsutaj (@tsutaj) May 30, 2023
競プロ作問を支える技術 https://t.co/bRIFCeBYsf
発表の様子
普段の活動としては、引き続きコンテスト後の感想や解法の共有を行っています。少しずつ部員数も増えていき、より活発になっています。
競プロ部の活動に興味を持たれた方、ぜひ一度採用サイトをご覧くださいませ!