kNakajima's Blog

技術系のアウトプットブログです。

競技プログラミング

AGC037 A - Dividing a String

AGC037 A問題の解説と解答例です。問題文 問題の概要 解き方 解答コード全文 問題の概要 "aabbaa" といった文字列をN個に分割する。 ただし、分割の仕方には条件があり、S = ["a", "a" "bb", "aa"]のように分割したとすると、S[i] == S[i+1]となる部分を作っ…

AtCoderで解いた問題が600問を超えた

600問解いて AtCoderを始めてから1年半ほど経過したのですが、AC数が600問を超えていました。ここ数ヶ月はコンテストに参加しておらず、気が向いたときに過去問をコツコツ解いてました。 また、レートの方は、ちょうど一年前くらいに800(緑)に到達したのです…

ソートアルゴリズムの理論と実装

コーディング面接対策として、初歩的なアルゴリズムの考え方とPythonでの実装例をメモ的にまとめます。 第1回目は、ソートアルゴリズムです。ソートアルゴリズムの種類は結構ありますが、今回は下記の2つについてです。(今後追加していく可能性あり) バブル…

整数問題用のライブラリ

競技プログラミングでは、数学の整数分野の問題がよく出題されます。 この記事では、書くことが多い処理をpythonで関数化したコードを紹介します。 詳しくは、下記のGitHubの方も参考にしてみて下さい。 github.com 最大公約数, 最小公倍数 約数 素因数分解 …

AtCoder 緑になるまでにやったこと

はじめに 2018年10月27日の Tenka1 Programmer Beginner Contestにて,レート800に到達して緑レートになりました.というわけで今回は,自分がAtCoderを始めた時から緑レートになるまでを振り返ろうと思います. はじめに 2018年6月(AtCoder開始) やったこと…

「プログラミングコンテスト攻略のためのアルゴリズムとデータ構造」を読んだ感想

プログラミングコンテスト攻略のためのアルゴリズムとデータ構造 作者: 渡部有隆,Ozy(協力),秋葉拓哉(協力) 出版社/メーカー: マイナビ 発売日: 2015/01/30 メディア: 単行本(ソフトカバー) この商品を含むブログ (7件) を見る 学部2年生の時のアルゴリズ…