Pythonで許可されている重複を含む連続した整数が配列に含まれているかどうかを確認します
numsと呼ばれる数値の配列があるとすると、要素が重複している可能性があります。連続した数字のセットかどうかを確認する必要があります。
したがって、入力がnums =[6、8、8、3、3、3、5、4、4、7]のような場合、要素は3、4、5、6、7であるため、出力はtrueになります。 、8。
これを解決するには、次の手順に従います-
- リスト番号を並べ替える
- 範囲1からnums-1のサイズのiの場合、do
- nums [i]-nums [i-1]> 1の場合、
- Falseを返す
- nums [i]-nums [i-1]> 1の場合、
- Trueを返す
理解を深めるために、次の実装を見てみましょう-
例
def solve(nums): nums.sort() for i in range(1,len(nums)): if nums[i] - nums[i-1] > 1: return False return True nums = [6, 8, 8, 3, 3, 3, 5, 4, 4, 7] print(solve(nums))
入力
[6, 8, 8, 3, 3, 3, 5, 4, 4, 7]
出力
True
-
配列のすべての要素が回文であるかどうかをPythonで確認します
numsの数のリストがあるとします。リストが回文であるかどうかを確認する必要があります。 したがって、入力がnums =[10、12、15、12、10]のような場合、出力はTrueになります。 これを解決するには、次の手順に従います- n:=numsのサイズ is_palindromeをリセット i:=0 i <=(n / 2)の商であり、nが0でない場合、do nums[i]がnums[n--i --1]と同じでない場合、 set is_palindrome ループから抜け出す i:=i + 1 is_palindromeが設定されている場合、 Falseを
-
Pythonで一意の配列の連続する間隔を見つけるプログラム
numsと呼ばれる一意の番号のリストがあるとします。並べ替えられた数値の2D行列を見つける必要があります。各リストは、数値が連続している数値を要約した包括的区間を表します。 したがって、入力がnums =[10、11、12、15、16、17、28、30]のような場合、出力は[[10、12]、[15、17]、[28、28]になります。 、[30、30]]、リスト[10から12]のように、[15から17]は隣接しており、28と30があり、[28から28]と[30から30]として表されます。 これを解決するために、次の手順に従います- リスト番号を並べ替える numsの最後に無限大を