JavaScriptを使用してn回のチャンスの後にオープンウォータータップの数を見つける
問題
学校が毎年恒例の日のお祝いにこのゲームを企画するとします-
「n」の蛇口があり、「n」の学生がランダムに選ばれます。インストラクターは、最初の生徒にすべてのタップに移動して開くように指示します。次に、2人目の生徒に1秒おきにタップして閉じさせます。 3番目は3回ごとのタップに移動し、閉じている場合は開き、開いている場合は閉じます。 4人目の生徒は、4回のタップごとにこれを行います。 「n」番目の生徒でプロセスが完了した後、開いているタップの数はいくつですか?
数値nを取り込んで、開いている水栓の数を返すJavaScript関数を作成する必要があります。
例
以下はコードです-
const num = 15; const openTaps = (num = 1) => { const arr = []; let index = 1; while(index ** 2 <= num){ arr.push(index++ ** 2); }; return arr.length; }; console.log(openTaps(num));
出力
7
-
JavaScriptを使用して配列内の特定の番号に最も近い2つの要素を検索する
問題 ソートされた整数の配列arrを最初の引数として受け取り、ターゲット番号を2番目の引数として受け取るJavaScript関数を作成する必要があります。 この関数は、配列arrに存在し、ターゲットに最も近い2つの数値の配列を返す必要があります。出力配列も昇順で並べ替える必要があります。 たとえば、関数への入力が 入力 const arr = [1, 2, 3, 4, 5]; const target = 3; 出力 const output = [2, 3]; 例 以下はコードです- const arr = [1, 2, 3, 4, 5]; const target = 3;
-
C++で庭に水をやるために開く蛇口の最小数
x軸に1次元の庭があるとします。庭の開始位置は0で、終了位置はnです。庭のポイント[0、1、...、n]にn+1個の蛇口があります。整数nと長さn+1の整数配列範囲がある場合、ranges [i]はi番目のタップであり、その領域が開く。 庭全体に水を供給するために開く必要のある蛇口の最小数を見つける必要があります。可能な解決策がない場合は、-1を返します。 したがって、入力がn =5で、範囲が[3,4,1,1,1,0]の場合、出力は1になります。これは、2番目のタップから、地面全体をカバーするためです[-3 〜5]。 これを解決するには、次の手順に従います- これを解決するには、次