+で文字列を分割して、0を含まない文字列の個数を数えてくださいと書いてあります。実装して提出するとACします。この時点で3位でした。酔った状態でナップサックの3種類の実装をするのはつらすぎます。コードを書いていましたが、全然終わる気がしません。自分の飲酒量の限界を感じていたので、かけたとしても提出するのは絶望的だなと思いました。残り15分ぐらいで順位表を見ると、hogloid君、amylaseさん、sigma425君が全員自分より下の順位にいます。皆さんがご存じの通り、彼らはとても強いので、彼らのうちだれか一人よりも上の順位を取ると僕の中では大金星です。そのあとhogloid君は1問解いて僕より上の順位を取りました。最終順位は6位でした。amylaseさんとsigma425君にプログラミングコンテストで勝てたことを一生自慢していこうと思います。その他レストランから出たらとりあえず水を買いに行きました。忘年会1次会で飲み物が提供されるものだと思っていましたが、すぐには提供されないようだったので、kenkooooさんと外のコンビニで10本ぐらい買ってきました。自宅に帰るまでエチケット袋を使う機会が訪れなかったので良かったです。2019の21日目の記事です。飲酒は20歳になってからです。未成年の人は20歳になってから読みに来てください。僕がRatedコンテストにお酒を飲みながら参加している理由と、(自分の中での)レギュレーションについて書きます。飲酒Ratedをやっている理由Twitterを検索すると、遅くとも2018年の8月ごろから自分は酒を飲んでからAtCoderのRatedコンテストに参加をしているようです。2018飲酒をしながらコンテストに参加をするようになった一番の理由は、自分がレートが下がることを恐れてコンテストに参加しなくなっていたからです。当時の自分は長いこと精進もしていなかったし、コンテストに参加してもレートが下がることは確実でした。そこで、酒を飲みながらコンテストに参加すれば、レートが下がっても酒のせいにできるのではと考えました。あと、土日はみんな酒飲みたいだろ。最後に、自分なりの酒を飲んでからコンテストに参加する方法を書いておきます。コンテスト開始10分前ごろを目安に酒の準備を始める。目安はビールであれば320ml缶1本、日本酒はグラスに一杯(200ml)。気分によってはカクテルを作る。居酒屋等に行きたければ、開店時刻(大体の店は17時ぐらい)を狙っていく。開店直後は人が少なく、一人でも入りやすいのでお勧め。店で飲む場合は、飲み会で飲む量を飲む(自分の場合はビール中ジョッキ2,3杯程度)。一人で行くと、長くても二時間程度で満足するので、コンテストに間に合うように帰る。飲酒Ratedを実行する意思表示を行うため、今から飲む酒の写真をTwitterに投稿する。2019何を飲んだかわかるように、缶や瓶のラベルが見えるように写真を撮るとなおよい。カクテルの場合は、メインとなるリキュールの瓶を写す。1L程度)を準備する。酒を一杯飲み終えた後、コンテスト中は水を飲む。これにより、簡単な問題を解く序盤は頭が回らないが、難しい問題を解く終盤には頭が冴えてくる。簡単な問題を酔った状態で解くのはかなり楽しい。Adventarの15日目の記事として書かれました。Group競技プログラマの皆さん、今日も一年お疲れ様でした。今年はオンサイトコンテストに参加できましたか?今年、僕はオンサイトコンテストに4回参加しました・・・スタッフとして。内訳は、IOI、所属企業主催のコンテスト2回とICPCアジア地区予選横浜大会です。この記事では、今年の経験をもとに非企業コンテストのオンサイトスタッフの仕事を紹介します。どんな人がスタッフをやっているのかIOIやICPCのスタッフは主に次の2種類に分けられます。コンテスト周りの仕事をするスタッフコンテストとは関係のない仕事をするスタッフ(受付やクロークなど、通称学生バイト)前者は競技プログラミング経験者が担当します。後者はコンテスト会場近隣の大学またはホスト校から来ていることが多い印象です(詳しい出元はしらない)。この記事では、主にコンテスト周りの仕事をするスタッフの話をします。コンテスト周辺の仕事をするスタッフを競技プログラミング経験者から選出する理由は、僕が効いた範囲ではコンテストのルールを把握している印刷物を配布の失敗がコンテスタントに影響を理解しているという部分が大きいそうです。後者はコンテストの結果や公平性に大きな影響を及ぼしかねないので、特に重点を置いているように感じます。スタッフの年齢層はコンテストの選手よりも高めになります。理由は参加権を持っている人たちはコンテストに参加している(それはそう)スタッフの募集がOBOGの会に送られている(ICPC)選手の年齢が若すぎる(IOI)といったところでしょうか。ICPCにおいては、参加権を失っていると(WF2回出場引退の猛者でない限り)修士2年以上になるので、社会人の割合が多くなります。ここでオンサイトコンテストの楽しみ方を紹介します。いえば、オンサイトプロコンの社会人スタッフを眺めながら、「日本の平均年収を上回っている人達が、風船配りなどの雑用をほぼ無償でやっている」と考えると、めちゃくちゃ笑えてくるのでおすすめです。2018事前にスポンサー企業の求人を調べておくと、年収の下界がおおよそわかるので、より楽しめるようになります(スポンサー企業に属しいているOBOGも多い)。スタッフの中に所属企業がわかっている人がいれば、その企業の求人を調べましょう。スタッフの仕事ICPCのスタッフの仕事は次の記事でも紹介されています。ratea.hatenablog.com仕事の割り当てはコンテスト直前まで決まっていないことが多いです。仕事の割り当ては、コンテスト前日・当日に状況に応じて運営を管理している先生が割り当てたり、あるいは、人が足りていない場所に自主的にカバーに行ったりして決まります。風船の準備(ICPC)を主に行います。ICPCでは、会場の準備・後片付けに学生バイトの人たちも加わっていました。電源・ネットワーク・マシンの配置がどの程度スタッフの仕事になるかはコンテストによって異なります。IOIでは全部業者がやっていました。今年のICPCで普通のスタッフが行った電源・ネットワーク・マシンの配置は、配線の固定程度でした。今年はコンテストと懇親会が同じ場所で行われたため、電源・ネットワーク・マシンはコンテスト終了後にスタッフ総出で片づけました。受付・クロークの支援(ICPC)受付・クロークは学生のバイトの人が行いますが、時々コンテストルールに関わる質問が選手またはバイトから出てきます(「これは持ち込み可能か?」)。コンテストではコンテスト会場に持ち込めるもの・持ち込めない物が定められています。選手入場時に持ち込めないものがないかチェックします。コンテスト中の仕事コンテスト中は主に次のことをやります。物の配達(風船、印刷物、食べ物)コンテスト会場のパトロールトイレの案内(IOI)解説中継(よく知らない)大部分のスタッフは物の配達かコンテスト会場のパトロールになります。コンテスト会場のパトロールでは、マシンやネットワークでトラブルがあったときに対応するのが仕事になります。(大体の場合は、困っている人を見つけて、対応ができる人を呼ぶまで。)スタッフをやることの利点コンテストグッズスタッフをやるとコンテストグッズ(主にTシャツ)がもらえます。僕はこれで1週間分のアルゴリズムTシャツを手に入れました。ICPCではスタッフとして参加したことの証明書(Certificate)がもらえます。慰労会が行われることがあるコンテスト運営の思い出話を話すオフ会です。観戦ができるコンテスト中はスタッフ控室で問題や順位表を眺めています。コンテスト会場の近くで観戦ができます。OBOGの会に勧誘されたからなんとなく」です。僕がICPCに参加していた頃はかなりOBOGの会の勧誘が盛んだったので、引退とともに直ちにOBOGの会に入会しました。社会人になって東京に来て、「ICPCのスタッフを募集します」という案内を見て「お世話になったコンテストだから、手伝いたいなぁ」という(わりと軽い)感じでスタッフに応募しました。軽い決意でスタッフに応募して、行ってみると大変でしたが、参加して後悔したことはないです。理由は、コンテストが終了すると「無事に終わってよかったな」という達成感があることと、何よりコンテスト終了後にコンテスタントが楽しそうにしているのを見ると嬉しいからです。コンテストに参加している選手を見ていると、今まで選手として参加していい思いをさせてもらった分を、次の世代につなげられているという喜びを感じます。これからも可能な限りスタッフとして参加し続けるのだと思います。OBOGの会(通称JAG)では近年スタッフの高齢化が進んでいます。最近はICPCのスタッフの集まりが悪いという危惧が上がっていたりします。競技プログラミング経験者で、ICPCの参加権を失った人はぜひJAGに入会をよろしくお願いいたします。GroupJAGのICPCスタッフ以外の仕事内容は次のブログ記事に詳しく載っています。kujira16.hateblo.jp番外編:交通費や宿泊費を出してもらうのは申し訳ない?時々、「スタッフに興味があるけど、遠方に住んでいるので交通費や宿泊費を出してもらうのが申し訳ない」と言ってスタッフに応募することを躊躇している人を見かけます。実際、修士2年のとき僕は福岡に住んでいたのでICPCスタッフとしての参加を見送った経験があります。実際にスタッフになって経験を積むと「学生はそんなことを気にしなくていいのでどんどん応募してほしい」という気持ちになってきました。コンテストを運営している偉い人たちはスタッフにお金がかかることよりは、必要な人数のスタッフが集まらないことを心配していることの方が多いような気がします。IOIでもICPCでもスタッフが足りないのではないかという危機感が漂っていました。コンテストを運営する上での一番の問題はスタッフが集まらなくて、コンテストの運営が成り立たなくなることです。経費のことは気にせず、どんどんスタッフに応募してもらえたらと思います。(十分な人数が集まって、遠方から人を召喚する必要がなくなったら、運営側からお礼兼お断りのメールが来ると思うので、みんな気にせず応募しましょう。2018の8日目の記事です。Machine(日本語版はもっともっとインクレディブル・マシーン)を紹介します。Machineはルーブ・ゴールドバーグ・マシーンを作るゲームのシリーズです。ルーブ・ゴールドバーグ・マシーンというのは、単純な作業を手の込んだからくりを使って遠回りに実現する装置のことです。いわゆるピタゴラ装置ですね。Machineシリーズの2作目で発売年は1992年(日本語版は1995年)だそうです。95のノートパソコンで遊んでました。XP,Vista,10で動作するものが購入するできます。packが約$10で購入できます。packはWindowsのみ対応らしいです。昔はMacで動くやつも販売されていたらしいんですが。)ゲームの形式は次のようになっています。各ステージ毎に課題と道具の初期配置(固定)、自由に配置できる道具のセットが与えられます。自由に配置できる道具を配置して、課題をクリアしたら勝ち。一つだけ例をやってみます。このステージでは一番右の蝋燭に火をつければ勝ちです。自由に使える道具は画面右側のツールボックスにあります。(スクリーンショットでは隠れている)です。課題を解決するには例えば次のように道具を配置します。これを動かしてみると次のようにして課題が解決できます。バケツが重力に従い落下し、一番左の白熱電球を灯す虫眼鏡を通った白熱電球の光がロケットに火をつけるロケットが発射し上に向かう。途中でダイナマイトに火をつけるダイナマイトが爆発して、ボウリング球を右側に飛ばすボウリング球が懐中電灯のスイッチをつける懐中電灯の光が虫眼鏡を通ってロケットに火をつけるロケットが発射し、シーソーにぶつかるシーソーにつながれたロープが滑車を通して、白熱電球を灯す白熱電球の光が虫眼鏡を通ってろうそくに火をつける動画で見るとこんな感じです。ちなみに、このゲームにはフリーエディットモードがあり、使える道具の制約なしに自分の好きなルーブ・ゴールドバーグ・マシーンを作ることができます・・・と聞くと半加算器を実装したくなるのが人情というものですよね。「プログラマーにオススメしたいゲーム紹介」という企画だったので、そこそこ頭をひねって実装してみました。1bit半加算器これが俺の答えじゃー!(ババーーン)左側のスイッチ付きコンセントが入力装置です。スイッチの上に野球ボールを置くと1、置かないと0とします。右側の家は下位ビットの出力です。家の中に人が入ると1、入らないと0です。右側の猿が乗った自転車が上位ビットの出力(桁上がり)です。猿が自転車をこぐと1、こがないと0です。動作させるとこんな感じになります。(野球ボールの位置をミスって何回かトライしてます。)AND回路の実装は簡単だったのですが、XORの実装方法を考えるのが難しかったです。何度、YouTubeで検索しそうになったことか・・・お付き合いいただきありがとうございました。Scriptを書きました。blue_jamの日記)しかし、残念ながらTopCoder部のカレンダーの更新が止まっています。あと、AtCoderのカレンダーも更新が滞っています。結果として、現在、僕のGoogleカレンダーにはCodeforcesのコンテストしかありません(参加する気もないのに)。そのため、TopCoder部のカレンダーから引っ張ってくるのをあきらめ、AtCoderをスクレイピングしてカレンダーにコンテストの予定を追加するようにしました。ScriptのためのCLIツールを出したようなので、そちらの方に移行させました。カレンダーはここに置いておきます。カレンダーは毎日深夜3時頃に更新される設定になっています。(こどふぉのコンテストしか追加されていないように見えますが、予定リストに切り替えるとちゃんとCodeFestivalの予選が追加されています。)ソースコードはここです。READMEは気が向いたら書く。github.com依然作ったスクリプトも一応走らせたままにします。23:20競技プログラミングコンテストカレンダーを作る(AtCoderスクレイピング編)Tweet広告を非表示にするもっと読むコメントを書く2018-08-12IOI2018の競技プログラミング経験者ボランティアに申し込むために出したメール(注)この記事は、僕が個人の意思で公開するものであり、IOI2018事務局さんは内容に一切かかわっていません。IOI2018の競プロ経験者向けボランティアに参加するために、僕が送ったメールを(個人情報を隠して)公開します。参加したいけど、メールに何を書いたらいいかわからないという人は参考にしてみてください。ここは絶対に変えなきゃダメよというところは字を赤くしています。OB・OGの会のボランティアスタッフとしての参加.会場準備,後片付け,印刷されたコードの配達など)よろしくお願いいたします.--<名前><メールアドレス>これぐらい簡単なメールでいいとわかったところで、ボランティアに応募したくなった人は、次のページに書いてある応募用メールアドレスにメールを出しましょう。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。