okinawa

IT勉強メモ

2023-06-01から1ヶ月間の記事一覧

多重for文・順列・組み合わせをPythonで書く

itertoolsで全部いける! Javaバージョン itertoolsで全部いける! import itertools # 直積 ネストしたforループと同じ 0~3の数字の全通り。SQLで言うところのCROSS JOIN # repeat=for文のネスト数と同じ。つまり数列の桁数。3*3*3=27 for product in iter…

二分探索

二分探索とは 理解のポイント 自力実装 条件を満たす最小の値を求める 条件を満たす最大の値を求める 参考サイト bisect関数 番兵の活用方法 例題 二分探索とは 二分探索とは、データ検索アルゴリズムの一つで、ソート(整列)済みのデータ群の探索範囲を半…

Mapで集計してからソートする系問題(AtCoder)

けっこうよく見るタイプなので、メモとして色々な解き方を書いておく。 ・問題文 1~Nまでの数字が3回出現する。 2回目に出現するのが早い順に出力する問題。 例:1 3 3 3 2 2 1 1 2 ←1~3までの数字が3回ずつ出現。 atcoder.jp 解き方1:答えがわかっ…

ユークリッドの互除法

放送大学の授業でユークリッドの互除法を見て、その後にちょうとAtCoderでユークリッドの互除法を使う問題に出会った。 ということで備忘録として。 atcoder.jp ユークリッドの互除法とは プログラム(引き算バージョン) プログラム2(余りバージョン) gc…