JavaScriptのいくつかの数に等しい絶対差を持つ最長のサブ配列
最初の引数として数値の配列(たとえばarr)を取り、2番目の引数として数値(たとえばnum)を受け取るJavaScript関数を作成する必要があります。関数は、各ペアの絶対差がnum以下である最長のサブアレイ(連続または非連続)の長さを見つけて返す必要があります。
たとえば、入力配列と数値が-
の場合const arr = [7, 9, 8, 6, 6, 3]; const num = 1;
その場合、出力は-
になります。const output = 3,
目的のサブアレイは[7、6、6]
であるため例
このためのコードは-
になりますconst arr = [7, 9, 8, 6, 6, 3]; const maximumSubarray = (arr = [], num = 1) => { if(!arr.length){ return 0; }; const maximum = arr.reduce((acc, val) => Math.max(acc, val)); const buckets = new Array(maximum + 1); buckets.fill(0); const { length } = arr; for(let i=0; i< length; i++){ buckets[arr[i]] += num; }; let max = 0; for(let j=1; j< maximum + 1; j++) { let curr = buckets[j]; let prev = buckets[j - 1]; if(prev != 0 && prev + curr > max) { max = prev + curr; }; }; return max; }; console.log(maximumSubarray(arr));
出力
そして、コンソールの出力は-
になります3
-
JavaScript Number.MAX_VALUE&Number.MIN_VALUEと例
JavaScriptのNumber.MAX_VALUEおよびNumber.MIN_VALUEプロパティは、JavaScriptで可能な最大および最小の数値表現をそれぞれ表します。 以下は、JavaScript Number.MAX_VALUE&Number.MIN_VALUEプロパティのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" co
-
C++の制限以下の絶対差分を持つ最長の連続サブアレイ
numsと呼ばれる整数の配列と整数の制限があるとすると、このサブ配列の任意の2つの項目間の絶対差が指定された制限以下になるように、最も長い空でないサブ配列のサイズを見つける必要があります。 したがって、入力がnums =[8,2,4,7]、limit =4の場合、出力は2になります。これは、- [8]そう|8-8| =0<=4。 4. 4. 4. [2]そう|2-2| =0<=4。 [2,4]だから|2-4| =2<=4。 4. [4]そう|4-4| =0<=4。 [4,7]そう|4-7| =3 <=4. [7]そう|7-