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