ARMERIA

放置していたけど更新再開、Rubyと競技プログラミングの話が中心になっていく予定です

プログラミング

ABC100-D 8通り場合分けの「正当性」について説明を試みる

タイトルの通りです。 D - Patisserie ABC おそらく色々な説明があると思いますが、私なりにしっくりきた考え方を書きます。是非、他の人の考え方も読んでみたいです。 一般の問題ではなく問題例を1つ考えるだけなので、厳密な証明の形式にはなっていません…

ABC100 参加記録

AtCoder Beginner Contest 100 - AtCoder 記念すべき100回目のABC!おめでとうございます! 次は目指せABC200。 ということでおめでたい回なのですが、私の成績は全完37分台で144位。うーん…2WAが痛いです。 平方数賞ですね(そんなものはない) 振り返って…

ABC099 参加記録

AtCoder Beginner Contest 099 - AtCoder unratedですが参加しました。 36分台全完で96位。C, Dにペナルティ込みで30分以上費やしていることを考えると「ARCじゃなくてよかった…」と思いますが、けっこう問題が難しめだったので相対的には健闘したほうかも?…

AtCoder青になりました

前回の記事にも書きましたが、AtCoderのレートが1600を突破し、青色になることができました! 「まずは青を目標に」と思ってやってきたので、とても嬉しいです。TwitterやSlackなどで交流や情報交換などしてくださった方々、本当にありがとうございます。今…

AGC025 参加記録

AtCoder Grand Contest 025 - AtCoder 90分台3完で201位。パフォーマンスは自己最高の2282を叩き出しました。AGC、ハマるとすごい。 A~Cについて振り返ってみます。Dも本番中に考えていましたが、根本的に解法が違っていたようなので…いずれ、ちゃんと勉強…

codeFlyer 参加記録

codeFlyer (bitFlyer Programming Contest) - AtCoder 初めて参加した企業コンテスト。結果は30分台3完で159位でした。 企業コンテストは変わった問題が出たり配点基準がいつもと違ったり…という話を聞いていましたが、今回は普通だったと思います。ABC/AR…

AtCoder ARC098 参加記録

復習を兼ねて、参加記録をなるべく書くようにしたいなと思います。 結果は2完・17分台で270位でした。Eとずっと格闘してましたが結局通せませんでした…。パフォーマンスは1861。 解けたCDと解けなかったEを、1問ずつ振り返ります。解法だけではなく思考の過…

Railsチュートリアル3章のエラー解決×2

Ruby on Railsチュートリアル 3章でエラーが発生したため、その解決方法を書き残します。 該当箇所は3.3.2節、わざとテストを失敗させるところです。 環境 ホストOS:Windows 10 ゲストOS:CentOS 7 VirtualBoxで動作 VirtualBoxのフォルダ共有機能を使用 Va…

AtCoder AGC023 B - Find Symmetries O(N^3)解法でのTLE対処

AtCoder Grand Contest 023 お疲れ様でした。A, Bの2完でした。(C通したかった…) 今回のB問題について、想定解である 解法を素直に実装すると、RubyではTLEしてしまったので、その対処法をまとめたいと思います。 問題 B - Find Symmetries 入力として の…

AtCoder AGC022-C Remainder Game 思考メモ

概要 以下の記事に乗っかって、私が「Remainder Game」を解いたときの方針について書いてみます。 競技プログラミングの強みと「典型力」について - chokudaiのブログ AtCoder Grand Contest 022 C - Remainder Game を解くときに考えたこと - pepsin-amylas…

Rubocopを走らせたら664行のコードで315個のoffenseが出た

昨日の時点でのRubyでポンのコードをかけてみたら、 1 file inspected, 315 offenses detected Created .rubocop_todo.yml. Run `rubocop --config .rubocop_todo.yml`, or add inherit_from: .rubocop_todo.yml in a .rubocop.yml file. ひどい。 警告数ラ…

パズルゲームのAIってどうやって作ればいいんだろう

今日、将棋の棋士とコンピュータが戦う電王戦(in ニコニコ生放送)を観てました。私は第3戦から見始めたのですが、すごく面白かったですね。多くの解説者やコメントが、無条件に棋士を応援する感じだったのは、ちょっと違うよなあと思ったのですが。 パネポ…

Rubyのarray.eachの中ではarray.deleteを使うべからず

「Rubyでポン」の制作でバグを作ってしまった話を書きます。おおっ、技術者ブログっぽい! Rubyでポンとは(というか、パネルでポンとは) 「パネルでポン」を知らない方も多いと思うのでかるーく紹介。20年前にSFCで出たパズルゲームです。 基本的には「ぷ…