Python
 Computer >> コンピューター >  >> プログラミング >> Python

数日後に製品の価格を調べるPythonプログラム


ある人が価格xの製品を購入したいとします。しかし、日を追うごとに、製品の価格は前日の価格のx倍になります。その人が製品を購入することを決心してから、y日後に製品の価格を知る必要があります。製品の価格が高すぎる場合、答えは10 ^ 9+7を法とする価格として与えられます。入力はペアのリストで与えられます。ペアの最初の値は初期価格xで、2番目の値はyで、経過した日数です。

したがって、入力がnums =[(5、2)、(6、8)、(2、12)、(2722764242812953792238894584、3486705296791319646759756475)、(1505449742164712795427942455727527、61649494321438487460747056421546274264)]の場合、出力は25、1679616になります。 4096、754504594、32955023

ここで、出力は5 ^ 2 =25、6 ^ 8 =1679616、2 ^ 12 =4096,2722764242812953792238894584 ^ 3486705296791319646759756475 =754504594(値は10 ^ 9 + 7を法とする値として与えられます)などです。

これを解決するには、次の手順に従います-

  • 0からnumsのサイズの範囲のiの場合は、
    • x、y:=nums [i、0]、nums [i、1]
    • 値xを10^9+7を法とするyの累乗に返します

理解を深めるために、次の実装を見てみましょう-

def solve(nums):
for i in range(len(nums)) :
   x,y = nums[i][0], nums[i][1]
   print(pow(x,y,1000000007))
solve([(5, 2),(6, 8),(2, 12)
,(2722764242812953792238894584, 3486705296791319646759756475)
,(1505449742164712795427942455727527, 61649494321438487460747056421546274264)])

入力

[(5, 2),(6, 8),(2, 12)
,(2722764242812953792238894584, 3486705296791319646759756475)
,(1505449742164712795427942455727527, 61649494321438487460747056421546274264)]

出力

25
1679616
4096
754504594
32955023

  1. Pythonでgodownに入れるボックスの数を見つけるためのプログラム

    整数を含む2つの配列があるとします。 1つのリストには、いくつかのユニット幅ボックスの高さが含まれ、別の配列には、godownの部屋の高さが含まれます。部屋には0...nの番号が付けられ、部屋の高さは配列godownのそれぞれのインデックスに示されます。ゴダウンに押し込める箱の数を調べなければなりません。いくつかの点に注意する必要があります ボックスを重ねることはできません。 ボックスの順序は変更できます。 ボックスは左から右にのみゴダウンに入れられます。 ボックスが部屋の高さよりも高い場合、そのボックスとその右側のすべてのボックスをゴダウンに押し込むことはできません。

  2. リスト内の最小数を見つけるPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −リストが表示されます。リストで利用可能な最小の番号を表示する必要があります ここでは、リストを並べ替えて最小の要素を取得するか、組み込みのmin()関数を使用して最小の要素を取得できます。 次に、以下の実装の概念を観察しましょう- 例 list1 = [101, 120, 104, 145, 99] # sorting using built-in function list1.sort() print("Smallest element is:", list1[0]) 出力 Smal