python

1/2ページ

python~数独、ナンプレを解く

初めに こんにちは、Keymaleです。今回は数独をpythonで解いてみたいと思います。 数独解法 とりあえず以下に数独を解くコードを載せます。 こんな感じですね。これを使って早速解いてみましょう。以下のコードを実行してみてください。 すると以下のような結果が出るはずです。 [5, 1, 7] [6, 9, 8] [2, 3, 4][2, 8, 9] [1, 3, 4] [7, 5, 6][3, […]

python~tkinterを用いたオセロ(リバーシ)改良版:CPU対戦付き~

はじめに こんにちは、Keymaleです。久しぶりの投稿です。 以前投稿したpythonでのオセロの実装例がなかなか見てくださっている方がいたので、今回はその改良版です。 改良版オセロ 今回の改良点は 現在の黒と白の数の表示 置ける場所のハイライト化 CPU対戦機能の追加 になります。以下にコードを記載します。 このコードを書いたファイルを実行すると、オセロを実行できます。

python~線形探索と二分探索

はじめに こんにちは,Keymaleです.今回は線形探索と二分探索です.久々にブログ熱が再燃し頑張って書いてます.最近は備忘録気味なとこもありますが,なるべくわかりやすく書きます. 線形探索 線形探索とは,例えば a = [1, 2, 3, 4, 5, 6, 7, 8, 9] という配列があった時に,この中に8という数字があるかどうかを探索するときに,一個目の1から順番に合っているかどうかを調べて […]

python~numpyで固有値,固有ベクトル

はじめに こんにちは,Keymaleです.今回Pythonで固有値,固有ベクトルの算出の仕方を説明します.手計算でやるとめんどくさいですが,Pythonなら一瞬です. 固有値,固有ベクトル numpyのlinalgというモジュールを用います.サンプルコードは以下になります. LA.eigの引数にnumpyの行列を入れるだけです.第一戻り値に固有値,第二戻り値に固有ベクトルが返ります. 実行すると, […]

python~ハノイの塔と再帰関数

こんにちは,Keymaleです.今回はハノイの塔です.再帰関数として有名な問題ですね.ハノイの塔を解くにあたり,まずはスタックを実装します. スタック スタックとはLIFO(Last In First Out)と呼ばれ,最後に入れたものからしか取り出せない構造です.以下のクラスで実装しました. ハノイの塔 ハノイの塔を解く関数を作ります. AからCにn枚のディスクを移動するとき,以下の再帰ステップ […]

python〜再帰関数とメモ化とフィボナッチ数列

はじめに こんにちは,Keymaleです.今回はフィボナッチ数列を用いて再帰関数とメモ化をメインに説明していきます.関数の計算時間はこちらの記事に記載しています.まずはフィボナッチ数列について フィボナッチ数列 フィボナッチ数列とは,1個前と2個前の値を足していく数列で,以下のようになります. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ….. 漸化式で書 […]

python~tkinterを用いたオセロ(リバーシ)の実装例~

初めに こんにちは、keymaleです。今回はtkinterを用いたオセロの実装です。まだ作り始めたばっかりでだいぶお粗末な部分はありますが、とりあえずオセロとして動いたのでコードを載せたいと思います。脱初心者としてオセロを実装しましたが、なかなかいい例題だったと思います。ルールの実装と確認とか、変数の定義とか、クラスとか、GUI化とか基礎知識でここまでできる確認と、自分のコード力把握にもってこい […]

python~素数列挙(エラトステネスの篩)と素因数分解~

初めに こんにちは、keymaleです。今回はpythonでの素数数え上げです。通常のやり方から、高速数え上げ(エラトステネスの篩←ふるいって読みます)を実装します。atcoderのD問題で2回目にこの素数数え上げに関する問題が出たので、備忘録として書いておきます。素因数分解も紹介しておきます。 通常の素数列挙 通常の方法は以下になります。 2は自明の素数として、3から2個ずつ、3,5,7,9,1 […]

python~gcd~最大公約数

初めに こんにちは、keymaleです。久しぶりの更新です。googleに言われてads.txtを入れたら、閲覧数と広告費が増えたので一定の効果がある、というかgoogleはこれを評価してるんだなと思って少しやる気が出てきたので書きます。 最大公約数、プログラミングではよくgcd(greatest common divisor)と略されますね。atcoderを始めたのですが、よくgcdに関する問題 […]

python~標準入力まとめ

標準入力 標準入力とはプログラミングコンテストにおいて、数値や文字などを入力として指示されますが、それをコード内に読み込む方法です。パターンとしては以下の4つになっています。 1行1文字 1行複数文字 複数行1文字 複数行複数文字 1行1文字 1行複数文字 複数行1文字 標準入力では複数行にわたって 13579 のように渡されることもあります。数が少なければ上記のように5回ならばinput()を5 […]