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

Pythonで島で生き残ることが可能かどうかを確認する


島があるとしましょう。その場所には店舗が1つしかないため、この店舗は日曜日を除いて常に営業しています。入力として次の値があります-

  • N(誰かが毎日購入できる食品の最大数)
  • S(誰かが生き残るために必要な日数)
  • M(生き残るために毎日必要な食物の数)

月曜日で、次のS日間生き残る必要がある場合。次のS日間生き残ることができるように、食料を購入するために必要な最小日数を見つけることができれば、生き残ることができるかどうかを確認する必要があります。

したがって、入力がS =12、N =24、M =3の場合、出力はTrueになり、食料を購入する必要がある最小日数は2になります。これは、8日間(現在の月曜日から)生き残ることができるためです。次の月曜日まで)24単位の食料を使用してから、次の4日間で12単位を再度購入します。

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

  • (N * 6 6)またはM> Nの場合、
    • Falseを返す
  • それ以外の場合、
    • count:=(M * S)/Nの商
    • (M * S)がNで割り切れる場合、
      • count:=count + 1
  • Trueを返してカウント

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

def solve(S, N, M):
   if ((N * 6) < (M * 7) and S > 6) or M > N:
      return False
   else:
      count = (M * S) // N
      if ((M * S) % N) != 0:
         count += 1
      return (True, count)
S = 12
N = 24
M = 3
print(solve(S, N, M))

入力

12, 24, 3

出力

(True, 2)

  1. PythonでベクトルAを回転させ、それにベクトルCを追加することで、ベクトルBに到達できるかどうかを確認します。

    2D平面に3つのベクトルx、y、zがあるとします。ベクトルxからベクトルyを90度(時計回り)回転させるか、必要に応じて何度でもzを追加して、ベクトルyを取得できるかどうかを確認する必要があります。 したがって、入力がx =(-4、-2)y =(-1、2)z =(-2、-1)のような場合、位置を取得するためにxにzを追加できるため、出力はTrueになります。 (-2、-1)、次に時計回りに90°回転して(-1、2)を取得します。 これを解決するには、次の手順に従います- 関数util()を定義します。これにはp、q、r、sが必要です d:=r * r + s * s dが0

  2. Python-変数が文字列かどうかを確認します

    Pythonを使用したデータ操作中に、操作されている変数のデータ型を確認する必要がある場合があります。これは、適切なメソッドまたは関数をその特定のデータ型に適用するのに役立ちます。この記事では、変数が文字列データ型であるかどうかを確認する方法を説明します。 type()の使用 type()メソッドは、提供された入力のデータ型を評価します。 type()メソッドへの入力として変数を直接取得し、変数を評価します。 例 var1 = "Hello" var2 = 123 var3 = "123" # using type() res_var1 = typ