(JS)Programmers:k個の数字
7873 ワード
問題の説明
配列のi番からj番までを切り取って並べ替えると、k番目の数字を求めようとします.
例えばarrayが[1,5,2,6,3,7,4],i=2,j=5,k=3の場合
せいげんじょうけん
I/O例
I/O例説明
[1,5,2,6,3,7,4]を2番目から5番目に切り取り、並べ替えます.[2,3,5,6]の3番目の数字は5です.[1,5,2,6,3,7,4]を4番目から4番目に切り取り、並べ替えます.[6]の最初の数字は6である.[1,5,2,6,3,7,4]最初から7番目にカット[1.2.3.4.5.6.7]の3番目の数字は3です.
問題を解く
function solution(array, commands) {
let answer = [];
let len = commands.length
for(let a = 0; a < len; a++) {
let i = commands[a][0];
let j = commands[a][1];
let k = commands[a][2];
let temp = array.slice(i-1, j)
temp.sort((x,y) => x-y);
let tempNum = temp[k-1]
answer.push(tempNum);
}
return answer;
}
その他の質問に答える
2
3
4
5
6
7
8
9
10
11
12
function solution(array, commands) {
var answer = [];
for(var i in commands) {
let subArr = array.slice(commands[i][0] - 1, commands[i][1]);
subArr.sort((a, b) => a - b);
answer.push(subArr[commands[i][2] - 1]);
}
return answer;
}
for-in文を使って、配列を指定しなくても簡潔に展開できるのが印象的でした.Reference
この問題について((JS)Programmers:k個の数字), 我々は、より多くの情報をここで見つけました https://velog.io/@yunsungyang-omc/JS-Programmers-k번째수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol