今回は木構造の問題を実際にpythonを使って解いてみました.木構造の基本的な使い方の問題,木構造の仕組みを利用した問題の二つを解いているので最近木に関して学び始めたという方,競技プログラミングで木構造を扱いたい方に向けています.
今回は競技プログラミングでよく見る木構造をpythonで実装してみました.木構造は探索アルゴリズムの基本となっていたりするので一度実装してみて作れるようになっておいた方がいいと感じました.今回の記事では木構造の仕組みから実際のコードと解説まで載…
今回はソートをしながらその移動コストを最小限にするという最小コストソート(Silly Sort)を扱いました.問題の解き方を考えるのに苦労しましたが,実装はそこまで難しくなく競技プログラミングが好きな方にぜひ解いてもらいたい問題になっています.
今回はソートアルゴリズムの中でもメモリを確保することで要素をソートするバケットソートに関して扱いました.実装に関してはバケットソートの中でも計数ソートを用いて実装しています.メモリ数の確保に注意がいりますがpythonだとバケットソートは簡単に…
アルファベットのリストを使う機会が競技プログラミングの中であったので,自身のメモとしてリストでアルファベットを出力したい時の方法をまとめました.
ソートアルゴリズムの中でも最速と言われているクイックソートをpythonで実装しています.ソートアルゴリズムの処理に必要なピボットやパーティションの考え方・コード・図も用意しているのでクイックソートの仕組みをちゃんと理解したい人に向けています.
今回はソートアルゴリズムの中でも今まで学んできたものよりも高速なアルゴリズムであるマージソートに関してpythonで実装していきました.これまで学んできた再帰関数の考え方や全体の処理の流れを抑えればそれほど苦戦せずに実装できると思います.また,マ…
今回はフラクタル図形(コッホ曲線)を扱った問題から再帰関数に関して解説してきました.一度は皆さんみたことがあるであろう図形を扱った問題なので解いていて楽しかったです.今度,pythonでフラクタル図形を描くことにも挑戦してみたいと思います.
pythonで部分集合を扱った問題を解くときどのような方法があるのかということを3つの解き方で紹介しました.実際にAtCoderの問題を解いたりしているので,部分集合を扱う問題がどんなものなのか,どうやって作るのか気になる方はチェックしてみてください!
pythonでリストの要素をスペース区切りで出力したい時,簡単に出力することができる方法を4つ紹介しています.競技プログラミングでは必須となる出力方法だと思うのでぜひ競技プログラミングに参加する時は使ってみてください