Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. Pythonでバイナリ文字列の1を最小スワップ回数でグループ化するアルゴリズム

    問題の概要 0と1だけで構成されたバイナリ文字列 input_str が与えられます。目標は、隣接する文字同士しか入れ替えられないという制限のもとで、すべての「1」を連続した一つのグループにまとめることです。そのために必要な最小スワップ回数を求めて返します。 たとえば、入力が input_str = 10110101 の場合、答えは 4 になります。実際の入れ替えの流れは次のとおりです。 10110101 → 01110101 → 01111001 → 01111010 → 01111100 合計スワップ回数は 4 回です。 解法の考え方:中央値を基準に1を集める この問題は中央値(medi

  2. Pythonで2つの通貨間の変換レートを求めるプログラムの実装方法

    問題の概要 3つの配列 curr_a・curr_b・conv_rate が与えられているとします。curr_a と curr_b には通貨名が格納されており、conv_rate[i] は「curr_a[i] から curr_b[i] への変換レート」を表します。 ここで、変換元の通貨 src と変換先の通貨 dest が与えられるので、src から dest への変換レートを求めます。変換が可能ならその値を出力し、不可能な場合は 0 を返します。 たとえば、次のような入力を考えてみましょう。 src = 「INR」(インドルピー) dest = 「JPY」(日本円) curr_a = [I

  3. Pythonでロードトリップの国境越え最小回数と総移動コストを求めるプログラム

    問題の概要 複数の国にまたがるさまざまな都市を訪れるロードトリップを計画することを考えます。道路のリスト「R」が与えられ、各要素は (x, y, cost) という形式で表されます。x は道路の起点となる都市、y は行き先の都市、cost はその道路を通行するときにかかるコストです。さらに、各国ごとの都市リストを要素とするリスト「C」も与えられます。出発都市 s と目的地 e が指定され、s から e へ移動したいとします。このとき、旅を完了するために必要な「国境をまたぐ移動の最小回数」と「移動にかかる総コスト」を求め、この2つの値を出力します。 例として、入力が R = [[0, 1, 2]

  4. Pythonで解く「平方数取りゲーム」の勝敗判定プログラム

    2人で行うビー玉(マーブル)ゲームを考えてみましょう。盤面には n 個のビー玉があり、各ターンでプレイヤーは「正の平方数個」(1、4、9、16…)のビー玉を必ず取らなければなりません。取れる平方数がない場合、そのプレイヤーは負けとなります。 この記事では、与えられた n に対して、先手の自分が最適な手を選んだ場合に勝利できるかどうかを判定するプログラムをPythonで実装します。 問題の例 たとえば入力が 14 の場合、出力は True(勝てる)になります。理由は以下のとおりです。 初手で自分が 9個 取る → 残り5個 相手は最大でも 4個 しか取れない → 残り1個になる 次の自分の番で

  5. Pythonでカードゲームの最大獲得ポイントを求めるプログラム

    問題の概要カードゲームを考えてみましょう。複数のカードが一列に並べられており、それぞれのカードには数字が書かれています。数字はランダムに配置されており、列の先頭と末尾には数字「1」が書かれたカードが挿入されています。このゲームでは、カードを1枚ずつ拾っていき、合計ポイントを最大化することが目標です。カードは配列「cards」で表され、各要素cards[i]がそのカードに書かれた数字を表します。カードiを拾うと、cards[i - 1] × cards[i] × cards[i + 1] のポイントを獲得できます。カードを1枚取り除くたびに、その左右にあったカード同士が新しく隣接します。このルー

  6. Pythonで中継点を経由して現在位置から目的地に到達できるか判定するプログラム

    問題の概要 2次元平面上に、座標 (px, py) の地点 p に置かれたポインタがあるとします。このポインタを、別の地点 q(座標 qx, qy)まで移動させたいのですが、ポインタは自由に動けるわけではありません。途中に配置された点をたどることでしか、目的地へは到達できません。 ここで、複数の座標点を格納した配列 paths が与えられます。ポインタは、現在位置から上下左右に1マス離れた点、すなわち (x+1, y)、(x, y+1)、(x−1, y)、(x, y−1) のいずれかに該当する点であれば、そこへ移動できます。 さらに重要なルールとして、paths に含まれる点は必ず配列の先頭か

  7. Pythonで爆弾に触れずに長方形領域を貫通する連続経路を判定するプログラム

    問題の概要 ここでは、配列 mat が与えられたときの問題を考えます。各要素は [p, q, r] という形式で表され、p と q は幾何学的な座標(x座標・y座標)、r は半径の値です。配列の各要素は、幅 w の長方形領域内にある爆弾の位置を示しています。 この長方形は上下方向に無限に伸びており、左右は x = 0 と x = w という2本の直線で囲まれています。爆弾が持つ r の値は安全半径を意味し、爆弾の中心からこの半径以内に近づくと爆発してしまいます。 求められているのは、すべての爆弾の下側からスタートし、すべての爆弾の上側でゴールする連続した経路を、どの爆弾にも触れずに引けるかどう

  8. Pythonでリスト内の全要素を並べ替えて1つの文字列に結合するプログラム

    問題の概要正の整数からなるリストが与えられます。このリストを降順に並べ替えたうえで、すべての要素を連結して1つの文字列を作成し、その結果を返すことが求められます。たとえば、入力が [415, 78, 954, 123, 5] の場合、出力は 954785415123 となります。ここで注意したいのは、単純に数値の大小で並べ替えるだけでは不十分なケースがあるという点です。「隣り合う要素を連結したときに最も大きな値になる」ように順序を決める必要があります。解決のための手順この問題は、以下の手順で解くことができます。比較用の関数 cmp() を定義します。引数として l と r を受け取ります。(l

  9. Python Pandas CategoricalIndex – カテゴリコードを取得する方法

    Pandas の CategoricalIndex からカテゴリコードを取得するには、codes プロパティを使用します。codes プロパティは、実際の値が categories 配列の中でどの位置にあるかを示す整数値の配列を返します。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pdCategoricalIndex の作成CategoricalIndex は、限られた(通常は固定された)数の取り得る値、つまり「カテゴリ」のみを持つことができます。categories パラメータを使ってカテゴリを設定し、ordered パラメータを使

  10. Python Pandas CategoricalIndex – カテゴリの取得方法をわかりやすく解説

    Pandas の CategoricalIndex に含まれるカテゴリを取得するには、categories プロパティを使用します。まずは、必要なライブラリをインポートしましょう。import pandas as pdCategoricalIndex は、限られた(通常は固定された)数の取り得る値、つまり「カテゴリ」のみを持つことができます。「categories」パラメータを使うことで、カテゴリカルデータに対してカテゴリを設定できます。また、「ordered」パラメータを指定すると、そのカテゴリカルデータを順序付きとして扱うことができます。catIndex = pd.CategoricalI

  11. Python Pandas CategoricalIndex - カテゴリに順序関係があるかどうかを確認する方法

    Pandas の CategoricalIndex において、カテゴリ同士に順序付けられた関係(ordered relationship)があるかどうかを確認するには、ordered プロパティを使用します。このプロパティは、カテゴリが順序付きとして定義されている場合に True を返し、そうでない場合は False を返します。 まず、必要なライブラリをインポートします。 import pandas as pd 次に、「categories」パラメータを使ってカテゴリカルデータのカテゴリを設定します。さらに、「ordered」パラメータに True を指定することで、このカテゴリカルデ

  12. 【Python・Pandas】CategoricalIndexのカテゴリ名を変更する方法(rename_categoriesの使い方)

    CategoricalIndexのカテゴリ名を変更するとは PandasでCategoricalIndex(カテゴリカルインデックス)のカテゴリ名を変更するには、rename_categories()メソッドを使用します。このメソッドを使うことで、既存のカテゴリラベルを新しいラベルに一括して置き換えることができます。 まず、必要なライブラリをインポートしましょう。 import pandas as pd CategoricalIndexの作成 CategoricalIndexは、限られた(通常は固定された)数の値のみを取ることができるインデックスです。カテゴリを設定するには「categorie

  13. Python Pandas CategoricalIndex – 辞書(dict)形式でカテゴリ名を変更する方法

    PandasのCategoricalIndexでカテゴリ名を変更するには、rename_categories()メソッドを使用します。このメソッドに辞書(dict)形式の新しいカテゴリを渡すことで、既存のカテゴリを一括して置き換えることができます。 本記事では、実際のコード例と実行結果を交えながら、CategoricalIndexのカテゴリ名を辞書形式で変更する手順をわかりやすく解説します。 CategoricalIndexとは CategoricalIndexは、限られた(通常は固定された)数の値のみを取ることができるインデックスです。カテゴリカルデータを扱う際に便利で、順序付き(orde

  14. Python Pandas CategoricalIndex入門:ラムダ式を使ってカテゴリ名を一括変更する方法

    PandasのCategoricalIndexでカテゴリ名をラムダ式(Lambda)を使って変更するには、rename_categories()メソッドを使用します。この記事では、実際のコード例とともに、その手順をわかりやすく解説します。 CategoricalIndexとは CategoricalIndexは、限られた(通常は固定された)数の値のみを取ることができるインデックスです。データ分析において、カテゴリ型のデータを効率的に扱うために活用されます。 必要なライブラリのインポート まず、必要なライブラリをインポートします。 import pandas as pd Categoric

  15. Python Pandas CategoricalIndex入門:reorder_categories()でカテゴリを並べ替える方法

    PandasのCategoricalIndexでカテゴリの順序を変更するには、reorder_categories()メソッドを使用します。まず、必要なライブラリをインポートしましょう。import pandas as pdCategoricalIndexとはCategoricalIndexは、限られた(通常は固定された)数の取り得る値、つまり「カテゴリ」のみを持つことができるインデックスです。categoriesパラメータを使ってカテゴリを設定し、orderedパラメータにTrueを指定することで、順序付きのカテゴリとして扱うことができます。catIndex = pd.Categorical

  16. Python Pandas CategoricalIndex – 新しいカテゴリを追加する方法

    PandasのCategoricalIndexに新しいカテゴリを追加するには、add_categories()メソッドを使用します。このメソッドを使うと、既存のカテゴリ一覧の末尾(最上位の位置)に新しいカテゴリが追加されます。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pdCategoricalIndexの作成「categories」パラメータを使用してカテゴリカルデータのカテゴリを設定し、「ordered」パラメータを使用して順序付きカテゴリとして扱います。catIndex = pd.CategoricalIndex(["

  17. Python Pandas入門:CategoricalIndexから指定したカテゴリを削除する方法

    CategoricalIndexから特定のカテゴリを削除するには、Pandasのremove_categories()メソッドを使用します。このメソッドを使うと、指定したカテゴリがインデックスから取り除かれ、それらのカテゴリに属していた値は自動的にNaN(欠損値)に置き換えられます。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pdCategoricalIndexの作成「categories」パラメータを使用してカテゴリカルデータのカテゴリを設定し、「ordered」パラメータを使用して順序付きのカテゴリカルとして扱います。catInd

  18. Python Pandas入門:CategoricalIndexのカテゴリを順序なし(unordered)に設定する方法

    PandasのCategoricalIndexでカテゴリを順序なし(unordered)に設定するには、as_unordered()メソッドを使用します。このメソッドを呼び出すことで、順序付き(ordered=True)として定義されていたカテゴリカルデータを、簡単に順序なしの状態へ変換できます。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pd順序付きCategoricalIndexの作成「categories」パラメータを使ってカテゴリを設定し、「ordered」パラメータにTrueを指定することで、順序付きのカテゴリカルインデック

  19. Python Pandas入門:CategoricalIndexのカテゴリを順序付き(ordered)に設定する方法

    CategoricalIndex(カテゴリカルインデックス)のカテゴリを順序付き(ordered)として設定したい場合は、Pandasが提供する as_ordered() メソッドを使用します。この記事では、具体的なコード例とともにその使い方をわかりやすく解説します。必要なライブラリのインポートまずは、Pandasをインポートします。import pandas as pdCategoricalIndexの作成次に、「categories」パラメータを使ってカテゴリを指定しながら、CategoricalIndexを作成します。catIndex = pd.CategoricalIndex([&qu

  20. Python Pandas CategoricalIndex – 辞書のような対応関係を使って値をマップする方法

    辞書(dict)のような対応関係を使用して値をマップするには、PandasのCategoricalIndex.map()メソッドを使用します。このメソッドに辞書を渡すと、カテゴリの値が対応する値へと変換されます。CategoricalIndex.map()メソッドの基本的な使い方まず、必要なライブラリをインポートします。import pandas as pd次に、「categories」パラメータでカテゴリカルデータのカテゴリを設定し、「ordered」パラメータを指定して順序付きのカテゴリカルとして扱います。catIndex = pd.CategoricalIndex(["P&qu

Total 8994 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:389/450  20-コンピューター/Page Goto:1 383 384 385 386 387 388 389 390 391 392 393 394 395