Algorithm/Programmers 15

[JS 코딩테스트] Lv.0 진료순서 정하기

문제 설명외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료순서를 정하려고 합니다.정수배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료순서를 정한 배열을 return하도록 solution 함수를 완성하세요. 제한사항중복된 원소는 없습니다.1≤ emergency의 길이 ≤ 101 ≤ emergency의 원소 ≤ 100입출력 예emergencyresult[3,76,24][3,1,2][1,2,3,4,5,6,7][7,6,5,4,3,2,1][30,10,23,6,100][2,4,3,5,1]나의 풀이function solution(emergency) { //sort를 이용해 내림차순으로 정렬 let align = emergency.slice().sort((a,b)=>b-a) ..

[JS 코딩테스트] Lv.0 외계행성의 나이

문제 설명우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다.a는 0, b는 1,c는 2,...,j는 9입니다.나이 age가 매개변수로 주어질 때 PROGRMMERS-962식 나이를 return하도록 solution 함수를 완성해주세요. 제한사항age는 자연수입니다.age≤1,000PROGRAMMERS-962 행성은 알파벳 소문자만 사용합니다.입출력 예ageresult23"cd"51"fb"100"baa"나의 풀이function solution(age) { //외계나이 저장 let spaceNum = 'abcdefghij' //숫자를 s..

[JS 코딩테스트] Lv.0 짝수의 합

문제 설명정수 n이 주어질 때, n 이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요. 제한사항0 < n ≤ 1000입출력 예nresult103046 내가 한 풀이function solution(n) { var answer = 0; //반복문을 2씩 증가시켜 짝수만 더할 수 있도록 함 for(let i = 2; i 다른 사람의 풀이function solution(n) { //수열 공식을 이용한 풀이 var half = Math.floor(n/2); return half*(half+1);} 문제 풀이(참고사항) 등차수열의 합의 공식 수열의 합 = 항의 개수 * (첫번째 항 + 마지막 항) / 2

[JS 코딩테스트] Lv.0 특정 문자 제거하기

문제 설명문자열 my_string과 문자 letter이 매개변수로 주어집니다.my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항1 ≤ my_string의 길이 ≤ 100letter은 길이가 1인 영문자입니다.my_string과 letter은 알파벳 대소문자로 이루어져 있습니다.대문자와 소문자를 구분합니다.입출력 예my_stringletterresult"abcdef""f""abcde""BCBdbe""B""Cdbe"나의 풀이function solution(my_string, letter) { //my_string을 분리해서 배열로 저장 let array = my_string.split("") //반복문으로 array[i]와 lette..

[JS 코딩테스트] Lv.0 문자 반복 출력하기

문제 설명문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요. 제한사항2 ≤ my_string 길이 ≤ 52 ≤ n ≤ 10"my_string"은 영어 대소문자로 이루어져 있습니다.입출력의 예my_stringnresult"hello"3"hhheeellllllooo" 나의 풀이function solution(my_string, n) { var answer = ''; let array = [] for(let i = 0; i 배열 문법을 활용을 못 하고 계속 반복문만 반복하게 된다. 의식적으로 문법을 활용하려고 해야겠다. 다른 사람의 풀이funct..

[JS 코딩테스트] Lv.0 짝수 홀수 개수

문제설명정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해조세요. 제한사항1≤num_list의 길이≤1001≤num_list의 원소≤1,000입출력 예num_listresult[1,2,3,4,5][2,3][1,3,5,7][0,4]나의 풀이function solution(num_list) { var answer = [0,0]; for(let i = 0; i 삼항연산자를 배운 이후 처음 사용했다. 확실히 볼 때보다 한 번이라도 써보니까 이해가 된다. 다른 사람의 풀이function solution(num_list) { var answer = [0,0]; for(let a ..

[JS 코딩테스트] Lv.0 직각삼각형 출력하기

문제설명 "*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 이 주어지면 높이와 너비가 n 인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요. 제한사항1 ≤n ≤10입출력 예입력출력3****** 나의 풀이const readline = require('readline');const rl = readline.createInterface({input: process.stdin,output: process.stdout});let input = [];rl.on('line', function (line) { input = line.split(' ');}).on('close', function () {const num = Number(input[0]);fo..

[JS 코딩테스트] Lv.0 뒤집힌 문자열

문제설명 문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항1 ≤ my_string의 길이 ≤ 1,000입출력 예 my_string return"jaron""noraj""bread"daerb 나의 풀이function solution(my_string) { let split = my_string.split("") split = split.reverse().join("") return split }다른 사람의 풀이function solution(my_string) { var answer = [...my_string].reverse().join..

[JS 코딩테스트] Lv.0 배열뒤집기

문제설명 정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요. 제한사항1 ≤ num_list의 길이 ≤1,0001 ≤ num_list의 원소 ≤1,000입출력 예num_listresult[1,2,3,4,5][5,4,3,2,1] [1, 1, 1, 1, 1, 2] [2,1,1,1,1,1][1,0,1,1,1,3,5][5,3,1,1,1,0,1]나의 풀이function solution(num_list) { var answer = []; for(let i = num_list.length - 1; i >= 0; i--){ answer.push(num_list[i]) ..

[JS 코딩테스트] 피자 나눠 먹기(2)

문제설명머쓱이네 피자가게는 피자를 여섯조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최고 몇 판을 시켜야 하는 지를 return하도록 solution 함수를 완성해보세요. 제한사항1≤n ≤100입출력 예nresult6110542 나의 풀이function solution(n) { let gcd = 0; let lcm = 1; let pizza = 1; if(n !== 6 && 6 % n !== 0){ for(let i = 0; i 6의 약수 명의 사람이 먹을 경우를 고려를 안 하고 코드를 짜서 틀렸던 문제이다.단순히 생각하지 말고 많은 경우의 수를 생각해야겠다..