プログラマー|Lv.2練習問題Part.3_JS
3248 ワード
難易度:Level.2
言語:Javascript
出題履歴:練習問題
畑を掘る縄張りゲームの最高の点数は?
コミットされたコードに不一致が発生しました.
これは、重複する値があるローのためです.
だからコードを修正しました.
インデックス以外の最大値を次の配列値に追加します.
最後の配列の最大値を結果値とします.
右かっこ文字列に正しいかっこが含まれているかどうかを確認します.
既存のコード
既存のアルゴリズム問題に類似の問題がある.
精度的には正しいが,効率的には通らなかったので,他の方法を選択した.
0の場合、カッコが正しいと判断する重複文が作成されます.
このとき、開始文字が終了すると開始文字が閉じられます.
すなわち、出力
次の大きな数字 ある数字をバイナリに変更すると、同じ数字を持つ次の大きな数字 が検索される.
関数を作成します.
繰り返し文を使用して、条件に一致する数値をエクスポートします.
畑を掘る 右かっこ
言語:Javascript
出題履歴:練習問題
フルプールコード 👈🏻 クリックしてGithubに移動
❓ Question 1
畑を掘る
📝 My Solution 1
function solution(land) {
let result = Math.max(...land[0])
let standard = land[0].indexOf(result)
for (let i = 1; i<land.length; i++) {
land[i][standard] = 0;
let nextNum = Math.max(...land[i])
result = result + nextNum;
standard = land[i].indexOf(nextNum)
}
return result;
}
既存のコードはテストの問題を解決しました.コミットされたコードに不一致が発生しました.
これは、重複する値があるローのためです.
だからコードを修正しました.
function solution(land) {
for (let i = 1; i<land.length; i++) {
land[i][0] += Math.max(land[i-1][1],land[i-1][2],land[i-1][3])
land[i][1] += Math.max(land[i-1][0],land[i-1][2],land[i-1][3])
land[i][2] += Math.max(land[i-1][0],land[i-1][1],land[i-1][3])
land[i][3] += Math.max(land[i-1][0],land[i-1][1],land[i-1][2])
}
const result = land[land.length-1].sort((a,b) => a-b)
return result[result.length-1]
}
重複インデックスの値を追加できません.インデックス以外の最大値を次の配列値に追加します.
最後の配列の最大値を結果値とします.
結果
❓ Question 2
右かっこ
📝 My Solution 2
既存のコード
既存のアルゴリズム問題に類似の問題がある.
replace
を使用して問題を解決しました.精度的には正しいが,効率的には通らなかったので,他の方法を選択した.
function solution(s) {
const arr = s.split("");
let t = 0;
for (let i=0; i<arr.length; i++) {
if (arr[i] == "(") {
t++;
} else {
t--;
}
if (t < 0) {
break;
}
}
return t == 0 ? true : false;
}
まず、指定した文字列を配列に設定します.0の場合、カッコが正しいと判断する重複文が作成されます.
このとき、開始文字が終了すると開始文字が閉じられます.
すなわち、出力
false
が構成される.結果
❓ Question 3
次の大きな数字
📝 My Solution 3
const checkNum = (num) => {
const ones = num.toString(2).split('').filter(data => data === "1")
return ones.length
}
まず、バイナリに変更する部分では、関数を作成します.
function solution(n) {
let standard = checkNum(n)
for (let i = n+1; i < n**2; i++) {
if (standard === checkNum(i)) {
return i;
break;
}
}
}
次に、標準として変数を作成します.繰り返し文を使用して、条件に一致する数値をエクスポートします.
結果
参考になる文章
Reference
この問題について(プログラマー|Lv.2練習問題Part.3_JS), 我々は、より多くの情報をここで見つけました https://velog.io/@sstaar91/Algorithm-Programmers-Practice2-3テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol