この記事は CompetitiveProgramming Advent Calendar のために作成されました。 「DP (Dynamic Programminng: 動的計画法) がよく分からない」というつぶやきをよく目にします。何から何まで分からないというわけではないけど、 「こういうDPをすれば解けるよ」と説明されれば理解できるけど、一からそれを思い付けない メモ再帰だと書けるけどループだと書けない、またはその逆 とかいう。 この記事は、DPという技法をより深く理解する手助けをすることを目的として書かれています。これを読めばどんなDPの問題もさくさく解ける・・・ことはないと思いますが、あんまり悩まずに実装できるようになるぐらいの効果はあるんじゃないかなと思います。想定する読者層は、簡単なDPの問題をいくつか解いたことがある、TopCoderレーティング 1500 未満ぐらいの人と

本記事は @_tanzaku_氏主催の、CompetitiveProgramming Advent Calendar の記事です。 簡単な問題を作問したので、出題してみます。 ぜひチャレンジしてみてください! Problem Statement 今年もクリスマスの季節がやってきた。クリスマスと言えばアドベントカレンダー。アドベントカレンダーとは、12月1日から、クリスマスの12月25日まで毎日窓を開けていくカレンダーのことである。それにちなんで、アドベントカレンダーイベントでは、参加者は一人一日ずつブログ記事を発表する。最初の参加者は12/1に、次の参加者は12/2に、といったように、a人目の参加者は12/a日(1 <= a <= 25)に記事を発表する。 あなたは競技プログラミングをテーマとしたアドベントカレンダーイベントを主催することにしたが、この企画は大変人気を博し、参加希望者数が
CompetitiveProgramming Advent Calendar 3日目は、数学っぽい話をしたいと思います。 N以下の素数をすべて求めよ。 N以下の素数の個数を求めよ。 A以上B以下の素数の個数を求めよ。 こんな感じの問題を見たことがあると思います。また問題としてでなくても、解く過程にこのようなサブ問題を解かなければいけない場合もよくあると思います。素数については説明しなくてもいいですよね? このような問題を素数列挙と呼ぶことにします。素数列挙ができれば、大きい数の素数判定や素因数分解をめっちゃ高速化したり、トーティエント関数、メビウス関数等、数学系のいろんな関数を求めたりできます。最近のもので素数列挙がほぼ必須のものだと Codeforces Beta Round #86 (Div. 1 Only) C. Double Happiness ICPC 国内予選 2011 A
この日記は、tanzakuさん主催のCompetitiveProgramming Advent Calendar - PARTAKEの記事です。普段、TopCoderのニコニコ生放送(http://com.nicovideo.jp/community/co78570)をしているのですが、最近は簡単な問題をじっくり解説するということが減ってきたので、今回は基本的な総当たりを取り上げてみることにします。これがちゃんとできれば、TopCoderのDivision 2はすぐに脱出できると思います。TopCoder以外の一般のプログラムでも、総当たりは使うことがあると思いますし、ぜひ使いこなせるようになりましょう。 forループを使った総当たり 問題1 FizzBuzzを数える A以上B以下の整数で、3か5で割り切れるものは、何個ありますか? 入力・制約条件 int A: Aは、0≦A≦10000

はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です -はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。はてなグループに投稿された日記データのエクスポートについて -はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記はてなグループ日記のエクスポートデータは2020年2月28
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く