알고리즘
-
[알고리즘 문제] 시저 암호알고리즘 2022. 11. 23. 21:24
내가 푼 정답 function solution(s, n) { var answer = ""; let order = [ "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", ]; s = s.split(""); for (i = 0; i 25 ? order.indexOf(s[i]) + n - 26 : order.indexOf(s[i])..
-
[알고리즘 문제] 신규 아이디 추천알고리즘 2022. 11. 23. 21:15
내가 푼 정답 function solution(new_id) { // 1단계 new_id = new_id.toLowerCase(); // 2단계 let new_id_temp = new_id; var pattern1 = /[0-9]/; //숫자 var pattern2 = /[a-z]/; //영어 for (i = 0; i < new_id_temp.length; i++) { if ( pattern1.test(new_id_temp[i]) | pattern2.test(new_id_temp[i]) | (new_id_temp[i] === "-") | (new_id_temp[i] === "_") | (new_id_temp[i] === ".") ) { } else { new_id = new_id.replace(new_i..
-
[알고리즘 문제] 소수 만들기알고리즘 2022. 11. 23. 21:08
내가 푼 정답 function solution(nums) { var answer = 0; var temp = []; for (i = 0; i < nums.length; i++) { for (x = i + 1; x < nums.length; x++) { for (y = x + 1; y < nums.length; y++) { temp.push(nums[i] + nums[x] + nums[y]); } } } for (const i of temp) { for (x = 2; x < i; x++) { if (i % x === 0) { answer += 1; break; } } } return temp.length - answer; }
-
[알고리즘 문제] 문자열 내림차순으로 배치하기알고리즘 2022. 11. 23. 21:05
내가 푼 정답 function solution(s) { var answer = []; var upper = []; var lower = []; s = s.split(""); s.forEach((value) => value === value.toUpperCase() ? upper.push(value) : lower.push(value) ); upper.sort().reverse(); lower.sort().reverse(); answer = [...lower, ...upper].join(""); return answer; }
-
[알고리즘 문제] 문자열 내 마음대로 정렬하기알고리즘 2022. 11. 23. 21:01
내가 푼 정답 function solution(strings, n) { var answer = []; var temp = []; strings.map((value) => (temp.push(value[n]))) temp.sort() strings.sort() for (const i of temp) { for (const x in strings) { if (i === strings[x][n]) { answer.push(strings[x]) strings.splice(x, 1) break } } } return answer; } strings를 sort()를 하여 단어들을 오름차순으로 만든 상태에서 temp에 있는 것과 같을 때, push하였다. push후에 splice로 방금 push한 것을 strings..
-
[알고리즘 문제] 모의고사알고리즘 2022. 11. 23. 20:52
내가 푼 정답 function solution(answers) { var answer = [0, 0, 0]; var totalAnswer = [] let one = [1, 2, 3, 4, 5] let two = [2, 1, 2, 3, 2, 4, 2, 5] let three = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5] // answers의 인덱스를 주기로 나눈 나머지가 수포자들이 찍은 답이 되어, answers의 답과 비교할 수 있다. for (i = 0; i < answers.length; i++) { if (answers[i] === one[i % 5]) answer[0] += 1 if (answers[i] === two[i % 8]) answer[1] += 1 if (answers[i]..