[프로그래머스] 230713 코딩테스트 연습 1. 글자 이어 붙여 문자열 만들기 function solution(my_string, index_list) { var answer = ''; for (let i=0; i { // my_string을 배열로 만들기 const copyArr = [...my_string]; const sliced_str = copyArr.slice(s, e+1); const reverse_str = sliced_str.reverse().join(''); copyArr.splice(s, e-s+1, reverse_str); // ** splice: 특정 인덱스 범위에 해당하는 배열요소 삭제 후, 새로운 요소를 넣음. my_string = copyArr.join(''); }); answer = my_string; return ..
[프로그래머스] 230712 코딩테스트 연습 1. 간단한 논리연산 // 조건부 연산: AND(&&), OR(||) function solution(x1, x2, x3, x4) { var answer = true; var res1 = (x1 || x2) var res2 = (x3 || x4) answer = (res1 && res2) return answer; } 2. 주사위 게임 3 // case1: 1111 * p // case2: Math.pow((10*p+q), 2) // case3: (p+q) * Math.sqrt( Math.pow((p-q), 2) ) // case4: q*r // case5: Math.min(a, b, c, d) // ** Math.pow(n, m) -> n의 m승 // ** Math.sqrt(n) -> n의 제곱근 //..
[프로그래머스] 230710 코딩테스트 연습 1. 배열 만들기 2 - toString() - ...변수 - every() 메서드 function solution(l, r) { var answer = []; // 1. 5의 배수인 값 중, 0과 5만 포함하는 값 출력! for (var i=l; i 문자 변경 // ** every 함수 사용: // ** every() 메서드: 배열 안의 모든 요소가 주어진 판별 함수를 통과하는지 test if ( [...charI].every( s => s === "5" || s === "0" ) ) { answer.push(i) } else { continue; } } if (answer.length == 0) { answer.push(-1); } return answer; } 2. 카운트 업 - for문 (반복문)..
[프로그래머스] 230729 코딩테스트 연습 1. 수열과 구간 쿼리 4 function solution(arr, queries) { var answer = []; var idx_arr = []; // 인덱스 범위 구하기 var filteredArray = []; // 필터된 인덱스 배열 for (let i = 0; i e && e>=s && s>=0) { // s, e 값에 대한 제한사항 for ( let j = s; j (num%k == 0)) // ** 처음에 k 제약사항을 넣었더니 오류 발생 > 지워줌. filteredArray.forEach( data => { arr[data] ++; }) answer = arr; idx_arr=[]; } } return answer; }
[프로그래머스] 230708 코딩테스트 연습 1. 수열과 구간 쿼리 2 function solution(arr, queries) { var answer = []; var arr_range = []; // 범위에 해당하는 배열 var res = []; // k보다 큰 값의 배열 var temp = 0; // k보다 크면서 가장 작은 값 queries.forEach( ([s, e, k]) => { // 범위에 해당하는 배열 자르기 arr_range = arr.slice(s, e+1); // k보다 큰 값 찾아 res 배열에 넣기 arr_range.forEach ( i => { if (i>k) { res.push(i); } }) // res 배열 원소 개수에 따른 최소값 저장 if (res.length>=2) { temp = res[0]; // ** 처..
[프로그래머스] 230707 코딩테스트 연습 1. 수열과 구간 쿼리 3 function solution(arr, queries) { var answer = []; var temp = 0; // 숫자 임시 저장소 for (var i = 0; i
[프로그래머스] 230706 코딩테스트 연습 1. 원소들의 곱과 합 function solution(num_list) { var answer = 0; var multiple = 1; var totalSqrt = 0; for (var i=0; i totalSqrt ) { answer = 0; } return answer; } 2. 이어 붙인 수 function solution(num_list) { var answer = 0; var odd = ""; var even = ""; for (var i = 0; i 숫자 바꾸기 even = parseInt(even); // 문자 > 숫자 바꾸기 answer = odd + even; return answer; } 3. 마지막 두 원소 function solution(num_list) { var answer =..
[프로그래머스] 230705 코딩테스트 연습 1. 코드 처리하기 (1) 조건 - 문자열 code를 읽으며, 만약 문자가 "1" 이면 mode 변경 - mode: 0, 1 존재 - 결과 문자열 ret 생성 - mode : 0 case1. code[idx]가 "1"이 아닐 때, 짝수 idx를 가지는 code[idx]를 ret 맨 뒤에 추가 case2. code[idx]가 "1"일 때, mode를 0에서 1로 변경 - mode : 1 case1. code[idx]가 "1"이 아닐 때, 홀수 idx를 가지는 code[idx]를 ret 맨 뒤에 추가 case2. code[idx]가 "1"일 때, mode를 1에서 0로 변경 - 시작할 때, mode는 0 - return하려는 ret이 빈 문자열 > "EMPTY" return (2) 코드 // 시작할 때 mo..
[프로그래머스] 230704 코딩테스트 연습 1. 문자열 섞기 function solution(str1, str2) { var answer = ''; let str1_arr = []; let str2_arr = []; str1_arr = str1.split(''); str2_arr = str2.split(''); const length = Math.ceil((str1_arr.length + str2_arr.length)/2); // Math ceil : 올림 for (var i=0; i { answer += i; }) return answer; } 3. 두 수의 연산값 비교하기 function solution(a, b) { var answer = 0; var str_a = a.toString(); var str_b = b.toString(); va..
[프로그래머스] 230701 코딩테스트 연습 1. 덧셈식 출력하기 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 () { console.log(`${Number(input[0])} + ${Number(input[1])} = ${Number(input[0]) + Number(input[1])}`); }); 2. 문자열 붙여서 출력하기 const readline = require('readline'); co..
[프로그래머스] 230630 코딩테스트 연습 1. 문자열 출력하기 const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); // 인터페이스 객체 생성 let input = []; rl.on('line', function (line) { input = line.split(' ').map((data) => { return data }); rl.close(); }).on('close',function(){ console.log(input.toString()); process.exit(); }); 2. a와 b 출력하기 const readline = require('readline'); co..