joonbread의 등록된 링크

키자드에 등록된 총 1673개의 포스트를 확인하실 수 있습니다.

Naver Blog

JAVA_N-ary Tree Postorder Traversal_LeetCode 590

JAVA_N-ary Tree Postorder Traversal_LeetCode 590 풀이 class Solution { List<Integer> arr = new ArrayList(); public List<Integer> postorder(Node root) { if(root == null) return arr; for(Node n: root.children) postorder(n); arr.add(root.val); return arr; } } * 출처 N-ary Tree Postorder Traversal - LeetCode N-ary Tree Postorder Traversal - Given the root of an n-ary tree, return the postorder traversal of its nodes' values. Nary-Tree input serialization is represented in their level order traversal. Ea

Naver Blog

JAVA_Longest Harmonious Subsequence_LeetCode 594

JAVA_Longest Harmonious Subsequence_LeetCode 594 풀이 class Solution { public int findLHS(int[] nums) { Map<Integer,Integer> map = new HashMap<>(); for(int i:nums) map.put(i,map.getOrDefault(i,0)+1); int max=0; for(int i : map.keySet()){ if(map.containsKey(i+1)) max = Math.max(max,map.get(i) + map.get(i+1)); } return max; } } * 출처 Longest Harmonious Subsequence - LeetCode Longest Harmonious Subsequence - We define a harmonious array as an array where the difference between its maximum value and it

Naver Blog

JAVA_Range Addition II_LeetCode 598

JAVA_Range Addition II_LeetCode 598 풀이 class Solution { public int maxCount(int m, int n, int[][] ops) { if (ops.length==0) return m*n; for(int[] val : ops) { m = val[0] < m ? val[0] : m; n = val[1] < n ? val[1] : n; } return m * n; } } * 출처 Range Addition II - LeetCode Range Addition II - You are given an m x n matrix M initialized with all 0's and an array of operations ops, where ops[i] = [ai, bi] means M[x][y] should be incremented by one for all 0 <= x < ai and 0 <= y < bi. Count and return

Naver Blog

JAVA_Minimum Index Sum of Two Lists_LeetCode 599

JAVA_Minimum Index Sum of Two Lists_LeetCode 599 풀이 class Solution { public String[] findRestaurant(String[] list1, String[] list2) { Map<String, Integer> map = new HashMap<>(); for (int i = 0; i < list1.length; i++) { map.put(list1[i], i); } List<String> mins = new ArrayList<>(); int minSum = Integer.MAX_VALUE; for (int i = 0; i < list2.length; i++) { String rest2 = list2[i]; if (map.containsKey(rest2)) { int sum = map.get(rest2) + i; if (sum < minSum) { mins = new ArrayList<>(); minSum = sum;

Naver Blog

JAVA_Can Place Flowers_LeetCode 605

JAVA_Can Place Flowers_LeetCode 605 풀이 class Solution { public boolean canPlaceFlowers(int[] flowerbed, int n) { int cnt = 0, N = flowerbed.length; for (int i = 0; i < N; i++) { if ((flowerbed[i] == 0) && ((i == 0 || flowerbed[i-1] == 0) && (i == N-1 || flowerbed[i+1] == 0))) { cnt++; flowerbed[i] = 1; } } return cnt >= n; } } * 출처 Can Place Flowers - LeetCode Can Place Flowers - You have a long flowerbed in which some of the plots are planted, and some are not. However, flowers cannot be plante

Naver Blog

JAVA_Leaf-Similar Trees_LeetCode 872

JAVA_Leaf-Similar Trees_LeetCode 872 풀이 class Solution { public boolean leafSimilar(TreeNode root1, TreeNode root2) { List<Integer> leaf1 = new ArrayList<Integer>(); List<Integer> leaf2 = new ArrayList<Integer>(); dfs(root1, leaf1); dfs(root2, leaf2); return leaf1.equals(leaf2); } public void dfs(TreeNode root, List leafs){ if (root == null) return; if (root.left == null && root.right ==null) leafs.add(root.val); dfs(root.right, leafs); dfs(root.left, leafs); } } * 출처 Leaf-Similar Trees - LeetCo

Naver Blog

JAVA_Middle of the Linked List_LeetCode 876

JAVA_Middle of the Linked List_LeetCode 876 풀이 class Solution { public ListNode middleNode(ListNode head) { ListNode node1 = head, node2 = head; while (node2 != null && node2.next != null) { node1 = node1.next; node2 = node2.next.next; } return node1; } } * 출처 Middle of the Linked List - LeetCode Can you solve this real interview question? Middle of the Linked List - Given the head of a singly linked list, return the middle node of the linked list. If there are two middle nodes, return the secon

Naver Blog

JAVA_Projection Area of 3D Shapes_LeetCode 883

JAVA_Projection Area of 3D Shapes_LeetCode 883 풀이 class Solution { public int projectionArea(int[][] grid) { int res = 0, x, y; for (int i = 0; i < grid.length; ++i) { x = 0; y = 0; for (int j = 0; j < grid.length; ++j) { x = Math.max(x, grid[i][j]); y = Math.max(y, grid[j][i]); if (grid[i][j] > 0) ++res; } res += x + y; } return res; } } * 출처 Projection Area of 3D Shapes - LeetCode Can you solve this real interview question? Projection Area of 3D Shapes - You are given an n x n grid where we pl

Naver Blog

JAVA_Uncommon Words from Two Sentences_LeetCode 884

JAVA_Uncommon Words from Two Sentences_LeetCode 884 풀이 class Solution { public String[] uncommonFromSentences(String s1, String s2) { Map<String,Integer> map = new HashMap<>(); ArrayList<String> list = new ArrayList<>(); for(String str : s1.split(" ")) map.put(str,map.getOrDefault(str,0) + 1); for(String str : s2.split(" ")) map.put(str,map.getOrDefault(str,0) + 1); for(Map.Entry<String,Integer> map2 : map.entrySet()){ if(map2.getValue() == 1) list.add(map2.getKey()); } return list.toArray(new S

Naver Blog

JAVA_Fair Candy Swap_LeetCode 888

JAVA_Fair Candy Swap_LeetCode 888 풀이 class Solution { public int[] fairCandySwap(int[] aliceSizes, int[] bobSizes) { int sum = (IntStream.of(aliceSizes).sum() - IntStream.of(bobSizes).sum()) / 2; HashSet<Integer> set = new HashSet<>(); for (int num1 : aliceSizes) set.add(num1); for (int num2 : bobSizes){ if (set.contains(num2 + sum)) return new int[] {num2 + sum, num2}; } return new int[0]; } } * 출처 Fair Candy Swap - LeetCode Can you solve this real interview question? Fair Candy Swap - Alice an

Naver Blog

JAVA_Surface Area of 3D Shapes_LeetCode 892

JAVA_Surface Area of 3D Shapes_LeetCode 892 풀이 class Solution { public int surfaceArea(int[][] grid) { int area = 0; for(int i = 0; i < grid.length; i++){ for(int j = 0;j < grid.length;j++){ if(grid[i][j] > 0) area += grid[i][j] * 4 + 2; if(i > 0) area -= Math.min(grid[i][j], grid[i-1][j]) * 2; if(j > 0) area -= Math.min(grid[i][j], grid[i][j-1]) * 2; } } return area; } } * 출처 Surface Area of 3D Shapes - LeetCode Can you solve this real interview question? Surface Area of 3D Shapes - You are giv

Naver Blog

JavaScript_옹알이_1_school_programmers

JavaScript_옹알이_1_school_programmers 풀이 function solution(babbling) { var chkArr = ["aya", "ye", "woo", "ma"]; var word = ""; var answer = 0; for(var i=0; i<babbling.length; i++) { word = babbling[i].toString(); for(var j=0; j<chkArr.length; j++) word = word.replaceAll(chkArr[j], ' '); if(!(word.trim())) answer++; } return answer; } 값 체크 시 공백을 ' '로 하고 trim()을 한 이유는 wyeoo에서 ye를 ''로 치환한 뒤 남은 값이 woo이므로 해당 옹알이 return 값에 포함되기 때문이다. ''가 아닌 ' '로 치환한 다음 trim()을 통해 스페이스바 문자열을 지운걸 확인 js에서 if문 조건으로 문자열 앞에 !

Naver Blog

JavaScript_다음에 올 숫자_school_programmers

JavaScript_다음에 올 숫자_school_programmers 풀이 function solution(common) { if (common[2] - common[1] === common[1] - common[0]) return common.pop() + common[1] - common[0]; else return common.pop() * (common[1] / common[0]); } * 출처 코딩테스트 연습 - 다음에 올 숫자 등차수열 혹은 등비수열 common 이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return 하도록 solution 함수를 완성해보세요. 제한사항 2 < common 의 길이 < 1,000 -1,000 < common 의 원소 < 2,000 common 의 원소는 모두 정수입니다. 등차수열 혹은 등비수열이 아닌 경우는 없습니다. 등비수열인 경우 공비는 0이 아닌 정수입니다. 입출력 예 common result [1, 2, 3, 4] 5

Naver Blog

JavaScript_연속된 수의 합_school_programmers

JavaScript_연속된 수의 합_school_programmers 풀이 function solution(num, total) { var answer = []; let sum = num * (1 + num) / 2; let start = (total - sum) / num; for(var i = 0; i<num; i++) answer[i] = start + i + 1; return answer; } * 출처 코딩테스트 연습 - 연속된 수의 합 연속된 세 개의 정수를 더해 12가 되는 경우는 3, 4, 5입니다. 두 정수 num 과 total 이 주어집니다. 연속된 수 num 개를 더한 값이 total 이 될 때, 정수 배열을 오름차순으로 담아 return하도록 solution함수를 완성해보세요. 제한사항 1 ≤ num ≤ 100 0 ≤ total ≤ 1000 num 개의 연속된 수를 더하여 total 이 될 수 없는 테스트 케이스는 없습니다. 입출력 예 num total resul

Naver Blog

JavaScript_종이 자르기_school_programmers

JavaScript_종이 자르기_school_programmers 풀이 function solution(M, N) { return M * N - 1; } * 출처 코딩테스트 연습 - 종이 자르기 머쓱이는 큰 종이를 1 x 1 크기로 자르려고 합니다. 예를 들어 2 x 2 크기의 종이를 1 x 1 크기로 자르려면 최소 가위질 세 번이 필요합니다. 정수 M , N 이 매개변수로 주어질 때, M x N 크기의 종이를 최소로 가위질 해야하는 횟수를 return 하도록 solution 함수를 완성해보세요. 제한사항 0 < M , N < 100 종이를 겹쳐서 자를 수 없습니다. 입출력 예 M N result 2 2 3 2 5 9 1 1 0 입출력 예 설명 입출력 예 #1 본문과 동일합니다. 입출력 예 #2 가로 2 세로 5인 종이는 ... school.programmers.co.kr

Naver Blog

JavaScript_문자열 밀기_school_programmers

JavaScript_문자열 밀기_school_programmers 풀이 function solution(A, B) { if (A == B) return 0; for(let i = 1; i < A.length+1; i++){ let newStr = A[A.length - 1] + A.substring(0, A.length - 1); if(newStr == B) return i; A = newStr; } return -1; } * 출처 코딩테스트 연습 - 문자열 밀기 문자열 "hello"에서 각 문자를 오른쪽으로 한 칸씩 밀고 마지막 문자는 맨 앞으로 이동시키면 "ohell"이 됩니다. 이것을 문자열을 민다고 정의한다면 문자열 A 와 B 가 매개변수로 주어질 때, A 를 밀어서 B 가 될 수 있다면 밀어야 하는 최소 횟수를 return하고 밀어서 B 가 될 수 없으면 -1을 return 하도록 solution 함수를 완성해보세요. 제한사항 0 < A 의 길이 = B 의 길이 < 100

Naver Blog

JavaScript_잘라서 배열로 저장하기_school_programmers

JavaScript_잘라서 배열로 저장하기_school_programmers 풀이 function solution(my_str, n) { let answer = []; for (let i = 0; i < my_str.length; i += n) answer.push(my_str.slice(i, i + n)); return answer; } * 출처 코딩테스트 연습 - 잘라서 배열로 저장하기 문자열 my_str 과 n 이 매개변수로 주어질 때, my_str 을 길이 n 씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_str 의 길이 ≤ 100 1 ≤ n ≤ my_str 의 길이 my_str 은 알파벳 소문자, 대문자, 숫자로 이루어져 있습니다. 입출력 예 my_str n result "abc1Addfggg4556b" 6 ["abc1Ad", "dfggg4", "556b"] "abcdef123" 3 ["abc", "def", "123"

Naver Blog

JavaScript_7의 개수_school_programmers

JavaScript_7의 개수_school_programmers 풀이 function solution(array) { return array.join('').split('7').length - 1; } * 출처 코딩테스트 연습 - 7의 개수 머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array 가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ array 의 길이 ≤ 100 0 ≤ array 의 원소 ≤ 100,000 입출력 예 array result [7, 77, 17] 4 [10, 29] 0 입출력 예 설명 입출력 예 #1 [7, 77, 17]에는 7이 4개 있으므로 4를 return 합니다. 입출력 예 #2 [10, 29]에는 7이 없으므로 0을 return 합니다. school.programmers.co.kr

Naver Blog

JavaScript_문자열 정렬하기 (2)_school_programmers

JavaScript_문자열 정렬하기 (2)_school_programmers 풀이 function solution(my_string) { return my_string.toLowerCase().split('').sort().join(''); } 문자열을 소문자로 변환, 문자로 나눈뒤, 정렬한 다음 붙이면 끝나는 문제 * 출처 코딩테스트 연습 - 문자열 정렬하기 (2) 영어 대소문자로 이루어진 문자열 my_string 이 매개변수로 주어질 때, my_string 을 모두 소문자로 바꾸고 알파벳 순서대로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 제한사항 0 < my_string 길이 < 100 입출력 예 my_string result "Bcad" "abcd" "heLLo" "ehllo" "Python" "hnopty" 입출력 예 설명 입출력 예 #1 "Bcad"를 모두 소문자로 바꾸면 "bcad"이고 이를 알파벳 순으로 정렬하면 "abcd"입니다. 입출력

Naver Blog

JavaScript_세균 증식_school_programmers

JavaScript_세균 증식_school_programmers 풀이 function solution(n, t) { return Math.pow(2,t) * n; } * 출처 코딩테스트 연습 - 세균 증식 어떤 세균은 1시간에 두배만큼 증식한다고 합니다. 처음 세균의 마리수 n 과 경과한 시간 t 가 매개변수로 주어질 때 t 시간 후 세균의 수를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 10 1 ≤ t ≤ 15 입출력 예 n t result 2 10 2048 7 15 229,376 입출력 예 설명 입출력 예 #1 처음엔 2마리, 1시간 후엔 4마리, 2시간 후엔 8마리, ..., 10시간 후엔 2048마리가 됩니다. 따라서 2048을 return합니다. 입출력 예 #2 처음엔 7마리, 1시간 후엔... school.programmers.co.kr

Naver Blog

JavaScript_제곱수 판별하기_school_programmers

JavaScript_제곱수 판별하기_school_programmers 풀이 function solution(n) { return Number.isInteger(Math.sqrt(n)) ? 1 : 2; } * 출처 코딩테스트 연습 - 제곱수 판별하기 어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n 이 매개변수로 주어질 때, n 이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 1,000,000 입출력 예 n result 144 1 976 2 입출력 예 설명 입출력 예 #1 144는 12의 제곱이므로 제곱수입니다. 따라서 1을 return합니다. 입출력 예 #2 976은 제곱수가 아닙니다. 따라서 2를 return합니다. school.programmers.co.kr

Naver Blog

JavaScript_문자열안에 문자열_school_programmers

JavaScript_문자열안에 문자열_school_programmers 풀이 function solution(str1, str2) { return str1.indexOf(str2) > -1 ? 1 : 2; } * 출처 코딩테스트 연습 - 문자열안에 문자열 문자열 str1 , str2 가 매개변수로 주어집니다. str1 안에 str2 가 있다면 1을 없다면 2를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ str1 의 길이 ≤ 100 1 ≤ str2 의 길이 ≤ 100 문자열은 알파벳 대문자, 소문자, 숫자로 구성되어 있습니다. 입출력 예 str1 str2 result "ab6CDE443fgh22iJKlmn1o" "6CD" 1 "ppprrrogrammers" "pppp" 2 "AbcAbcA" "AAA" 2 입출력 예 설명 입출력 예 #1 "ab 6CD E44... school.programmers.co.kr

Naver Blog

JavaScript_OX퀴즈_school_programmers

JavaScript_OX퀴즈_school_programmers 풀이 function solution(quiz) { return quiz.map((str) => { return eval(str.split(" = ")[0]) === Number(str.split(" = ")[1]) ? "O" : "X"; }); } 문자열 배열에 수식과 답이 있으므로, 배열 안 문자열을 뽑기 위해 map을 사용 문자열중 ' = '을 기준으로 앞과, 뒤의 값을 비교하는 문제 * 출처 코딩테스트 연습 - OX퀴즈 덧셈, 뺄셈 수식들이 'X [연산자] Y = Z' 형태로 들어있는 문자열 배열 quiz 가 매개변수로 주어집니다. 수식이 옳다면 "O"를 틀리다면 "X"를 순서대로 담은 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 연산 기호와 숫자 사이는 항상 하나의 공백이 존재합니다. 단 음수를 표시하는 마이너스 기호와 숫자 사이에는 공백이 존재하지 않습니다. 1 ≤ quiz 의 길이

Naver Blog

JavaScript_자릿수 더하기_school_programmers

JavaScript_자릿수 더하기_school_programmers 풀이 function solution(n) { return Array.from(String(n)).reduce((a, b) => Number(a) + Number(b), 0); } 정수 n값을 -> 배열 -> 숫자를 추출하여 더하면 끝 * 출처 코딩테스트 연습 - 자릿수 더하기 문제 설명 정수 n 이 매개변수로 주어질 때 n 의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요 제한사항 0 ≤ n ≤ 1,000,000 입출력 예 n result 1234 10 930211 16 입출력 예 설명 입출력 예 #1 1 + 2 + 3 + 4 = 10을 return합니다. 입출력 예 #2 9 + 3 + 0 + 2 + 1 + 1 = 16을 return합니다. school.programmers.co.kr

Naver Blog

JavaScript_n의 배수 고르기_school_programmers

JavaScript_n의 배수 고르기_school_programmers 풀이 function solution(n, numlist) { return numlist.filter((num) => num % n === 0); } 정수배열에서 filter를 사용한 문제 * 출처 코딩테스트 연습 - n의 배수 고르기 정수 n 과 정수 배열 numlist 가 매개변수로 주어질 때, numlist 에서 n 의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 10,000 1 ≤ numlist 의 크기 ≤ 100 1 ≤ numlist 의 원소 ≤ 100,000 입출력 예 n numlist result 3 [4, 5, 6, 7, 8, 9, 10, 11, 12] [6, 9, 12] 5 [1, 9, 3, 10, 13, 5] [10, 5] 12 [2, 100, 120, 600, 12, 12] [... school.programmers.co.kr

Naver Blog

JavaScript_코딩 기초 트레이닝_수 조작하기 2_school_programmers

JavaScript_코딩 기초 트레이닝_수 조작하기 2_school_programmers 풀이 function solution(numLog) { return numLog.reduce((str, val, idx, arr) => { // reduce를 이용, 누적값에 조건에 맞는 문자열을 추가해서 누적값을 반환한다. return str + (val - arr[idx - 1] == 1 ? "w" : val - arr[idx - 1] == -1 ? "s" : val - arr[idx - 1] == -10 ? "a" : val - arr[idx - 1] == 10 ? "d" : ""); }, ""); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181925 코딩테스트 연습 - 수 조작하기 2 정수 배열 numLog 가 주어집니다. 처음에 numLog[0] 에서 부터 시작해 "w", "a", "s", "d"로 이루어진 문자

Naver Blog

JavaScript_코딩 기초 트레이닝_배열 만들기 2_school_programmers

JavaScript_코딩 기초 트레이닝_배열 만들기 2_school_programmers 풀이 function solution(l, r) { // 시작(l) 부터 끝(r)까지의 배열에서 filter로 0,5를 공백으로 변환한 값의 길이가 0일경우에 조건을 충족한다. const v = Array.from({ length: (r - l + 1) / 1}, (_, i) => l + i).filter(x => (new String(x)).replace(/['0','5']/gi, '').length === 0); // 만약 v가 빈값이 아니라면 v를, 빈값이라면 -1을 담은 배열을 반환한다. return v.length ? v : [-1]; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181921 코딩테스트 연습 - 배열 만들기 2 정수 l 과 r 이 주어졌을 때, l 이상 r 이하의 정수 중에서 숫자 "0"과 "5"로만

Naver Blog

JavaScript_코딩 기초 트레이닝_카운트 업_school_programmers

JavaScript_코딩 기초 트레이닝_카운트 업_school_programmers 풀이 function solution(start, end) { // 시작, 끝 값을 넣고 array.from을 이용하여 배열을 만든다. return Array.from({ length: (end - start + 1) / 1}, (_, i) => start + i); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181920 코딩테스트 연습 - 카운트 업 문제 설명 정수 start 와 end 가 주어질 때, start 부터 end 까지의 숫자를 차례로 담은 리스트를 return하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ start ≤ end ≤ 50 입출력 예 start end result 3 10 [3, 4, 5, 6, 7, 8, 9, 10] 입출력 예 설명 입출력 예 #1 3부터 10까지의 숫자들을 담은 리스트

Naver Blog

JavaScript_코딩 기초 트레이닝_콜라츠 수열 만들기_school_programmers

JavaScript_코딩 기초 트레이닝_콜라츠 수열 만들기_school_programmers 풀이 function solution(n) { const arr = []; // n이 1이 안될때까지 반복하며 조건에 따라 값을 설정하기 전에 배열에 값을 넣고 반복이 끝나면 1을 마지막으로 넣는다. while(n != 1){ arr.push(n); n = (n % 2 == 0) ? n / 2 : (3 * n + 1)}; arr.push(1); return arr; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181919 코딩테스트 연습 - 콜라츠 수열 만들기 모든 자연수 x 에 대해서 현재 값이 x 이면 x 가 짝수일 때는 2로 나누고, x 가 홀수일 때는 3 * x + 1 로 바꾸는 계산을 계속해서 반복하면 언젠가는 반드시 x 가 1이 되는지 묻는 문제를 콜라츠 문제라고 부릅니다. 그리고 위 과정에서 거쳐간 모든 수를

Naver Blog

JavaScript_코딩테스트 입문_두 수의 곱_school_programmers

JavaScript_코딩테스트 입문_두 수의 곱_school_programmers 풀이 function solution(num1, num2) { // 두 수를 곱해준다. return num1 * num2; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181883 코딩테스트 연습 - 수열과 구간 쿼리 1 정수 배열 arr 와 2차원 정수 배열 queries 이 주어집니다. queries 의 원소는 각각 하나의 query 를 나타내며, [s, e] 꼴입니다. 각 query 마다 순서대로 s ≤ i ≤ e 인 모든 i 에 대해 arr[i] 에 1을 더합니다. 위 규칙에 따라 queries 를 처리한 이후의 arr 를 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ arr 의 길이 ≤ 1,000 0 ≤ arr 의 원소 ≤ 1,000,000 1 ≤ queries 의 길이 ≤ 1,000 0 ≤ s

Naver Blog

JavaScript_코딩테스트 입문_몫 구하기_school_programmers

JavaScript_코딩테스트 입문_몫 구하기_school_programmers 풀이 function solution(num1, num2) { // '/' 연산자를 사용하여 나눈 뒤 소수점 이하 값을 절삭한다. return Math.floor(num1/num2); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120805 코딩테스트 연습 - 몫 구하기 문제 설명 정수 num1 , num2 가 매개변수로 주어질 때, num1 을 num2 로 나눈 몫을 return 하도록 solution 함수를 완성해주세요. 제한사항 0 < num1 ≤ 100 0 < num2 ≤ 100 입출력 예 num1 num2 result 10 5 2 7 2 3 입출력 예 설명 입출력 예 #1 num1 이 10, num2 가 5이므로 10을 5로 나눈 몫 2를 return 합니다. 입출력 예 #2 num1 이 7, num2 가 2이므로 7을 2로

Naver Blog

JavaScript_코딩테스트 입문_나머지 구하기_school_programmers

JavaScript_코딩테스트 입문_나머지 구하기_school_programmers 풀이 function solution(num1, num2) { // '%' 연산자를 이용하여 나머지 값을 구한다. return num1 % num2; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120810 코딩테스트 연습 - 나머지 구하기 정수 num1 , num2 가 매개변수로 주어질 때, num1 를 num2 로 나눈 나머지를 return 하도록 solution 함수를 완성해주세요. 제한사항 0 < num1 ≤ 100 0 < num2 ≤ 100 입출력 예 num1 num2 result 3 2 1 10 5 0 입출력 예 설명 입출력 예 #1 num1 이 3, num2 가 2이므로 3을 2로 나눈 나머지 1을 return 합니다. 입출력 예 #2 num1 이 10, num2 가 5이므로 10을 5로 나눈 나머지 0을 return

Naver Blog

JavaScript_코딩테스트 입문_두 수의 차_school_programmers

JavaScript_코딩테스트 입문_두 수의 차_school_programmers 풀이 function solution(num1, num2) { // '-' 연산자를 이용해서 num1에서 num2를 뺀 값을 반환한다. return num1 - num2; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120803 코딩테스트 연습 - 두 수의 차 문제 설명 정수 num1 과 num2 가 주어질 때, num1 에서 num2 를 뺀 값을 return하도록 soltuion 함수를 완성해주세요. 제한사항 -50000 ≤ num1 ≤ 50000 -50000 ≤ num2 ≤ 50000 입출력 예 num1 num2 result 2 3 -1 100 2 98 입출력 예 설명 입출력 예 #1 num1 이 2이고 num2 가 3이므로 2 - 3 = -1을 return합니다. 입출력 예 #2 num1 이 100이고 num2 가 2이므로 1

Naver Blog

JavaScript_코딩테스트 입문_숫자 비교하기_school_programmers

JavaScript_코딩테스트 입문_숫자 비교하기_school_programmers 풀이 function solution(num1, num2) { // 삼항연산자와 '==='를 이용하여 값을 비교한다. return num1 === num2 ? 1 : -1; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120807 코딩테스트 연습 - 숫자 비교하기 정수 num1 과 num2 가 매개변수로 주어집니다. 두 수가 같으면 1 다르면 -1을 retrun하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ num1 ≤ 10,000 0 ≤ num2 ≤ 10,000 입출력 예 num1 num2 result 2 3 -1 11 11 1 7 99 -1 입출력 예 설명 입출력 예 설명 #1 num1 이 2이고 num2 가 3이므로 다릅니다. 따라서 -1을 return합니다. 입출력 예 설명 #2 num1 이 11이고 num2

Naver Blog

JavaScript_코딩테스트 입문_나이 출력_school_programmers

JavaScript_코딩테스트 입문_나이 출력_school_programmers 풀이 function solution(age) { // 2022 - age + 1값을 반환한다. return 2022 - age + 1; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120820 코딩테스트 연습 - 나이 출력 머쓱이는 40살인 선생님이 몇 년도에 태어났는지 궁금해졌습니다. 나이 age 가 주어질 때, 2022년을 기준 출생 연도를 return 하는 solution 함수를 완성해주세요. 제한사항 0 < age ≤ 120 나이는 태어난 연도에 1살이며 1년마다 1씩 증가합니다. 입출력 예 age result 40 1983 23 2000 입출력 예 설명 입출력 예 #1 2022년 기준 40살이므로 1983년생입니다. 입출력 예 #2 2022년 기준 23살이므로 2000년생입니다. school.programmers.co.kr

Naver Blog

JavaScript_코딩테스트 입문_두 수의 합_school_programmers

JavaScript_코딩테스트 입문_두 수의 합_school_programmers 풀이 function solution(num1, num2) { // num1 + num2 값을 반환한다. return num1 + num2; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120802 코딩테스트 연습 - 두 수의 합 문제 설명 정수 num1 과 num2 가 주어질 때, num1 과 num2 의 합을 return하도록 soltuion 함수를 완성해주세요. 제한사항 -50,000 ≤ num1 ≤ 50,000 -50,000 ≤ num2 ≤ 50,000 입출력 예 num1 num2 result 2 3 5 100 2 102 입출력 예 설명 입출력 예 #1 num1 이 2이고 num2 가 3이므로 2 + 3 = 5를 return합니다. 입출력 예 #2 num1 이 100이고 num2 가 2이므로 100 + 2 = 102를 ret

Naver Blog

JavaScript_코딩테스트 입문_두 수의 나눗셈_school_programmers

JavaScript_코딩테스트 입문_두 수의 나눗셈_school_programmers 풀이 function solution(num1, num2) { // Math.floor(num1 / num2 값에 * 100)로 소수점 이하 값을 절삭한다. return Math.floor(num1 / num2 * 1000); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120806 코딩테스트 연습 - 두 수의 나눗셈 정수 num1 과 num2 가 매개변수로 주어질 때, num1 을 num2 로 나눈 값에 1,000을 곱한 후 정수 부분을 return 하도록 soltuion 함수를 완성해주세요. 제한사항 0 < num1 ≤ 100 0 < num2 ≤ 100 입출력 예 num1 num2 result 3 2 1500 7 3 2333 1 16 62 입출력 예 설명 입출력 예 #1 num1 이 3, num2 가 2이므로 3 / 2 =

Naver Blog

JavaScript_코딩테스트 입문_각도기_school_programmers

JavaScript_코딩테스트 입문_각도기_school_programmers 풀이 function solution(angle) { // 조건에 맞는 값들을 배열로 만든 뒤, filter를 이용하여 나온 값의 길이를 반환한다. return [0, 90, 91, 180].filter((v) => (angle >= v)).length; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120829 코딩테스트 연습 - 각도기 각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle 이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요. 예각 : 0 < angle < 90 직각 : angle = 90 둔각 : 90 < angle < 180 평각 : angle =

Naver Blog

JavaScript_코딩테스트 입문_짝수의 합_school_programmers

JavaScript_코딩테스트 입문_짝수의 합_school_programmers 풀이 function solution(n) { // n은 0보다 큰 값이지만, n = 1 일경우 0을 반환 // n이 1이 아닐 경우 1부터 n까지의 배열에서 나머지가 0인 짝수를 추출, 이후 배열의 모든 값을 더해 반환한다. return n === 1 ? 0 : Array.from({length:n},(v,i) => i + 1).filter((v2) => v2 % 2 == 0).reduce((a,b) => a += b); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120831 코딩테스트 연습 - 짝수의 합 문제 설명 정수 n 이 주어질 때, n 이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요. 제한사항 0 < n ≤ 1000 입출력 예 n result 10 30 4 6 입출력 예 설명 입출력

Naver Blog

JavaScript_코딩테스트 입문_배열의 평균값_school_programmers

JavaScript_코딩테스트 입문_배열의 평균값_school_programmers 풀이 function solution(numbers) { // 배열 누산값을 배열 길이로 나눈다. return numbers.reduce((a,b) => {return a + b},0) / numbers.length; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120817 코딩테스트 연습 - 배열의 평균값 정수 배열 numbers 가 매개변수로 주어집니다. numbers 의 원소의 평균값을 return하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ numbers 의 원소 ≤ 1,000 1 ≤ numbers 의 길이 ≤ 100 정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다. 입출력 예 numbers result [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 5.5 [89, 90, 91, 9

Naver Blog

JavaScript_코딩테스트 입문_양꼬치_school_programmers

JavaScript_코딩테스트 입문_양꼬치_school_programmers 풀이 function solution(n, k) { // 양꼬치 10개를 샀을 경우 음료수 1개를 서비스로 주므로, n을 10로 나눈 몫을 음료수 총 개수에서 제외한다. return Number((12000 * n) + ((k - Math.floor(n / 10)) * 2000)); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120830 코딩테스트 연습 - 양꼬치 머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다. 양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다. 정수 n 과 k 가 매개변수로 주어졌을 때, 양꼬치 n 인분과 음료수 k 개를 먹었다면 총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해보세요. 제한사항 0 < n < 1,000 n / 10 ≤ k < 1,000 서비

Naver Blog

JavaScript_코딩테스트 입문_배열 원소의 길이_school_programmers

JavaScript_코딩테스트 입문_배열 원소의 길이_school_programmers 풀이 function solution(strlist) { // 배열 안 요소의 길이를 출력한다. return strlist.map((v)=> v.length); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120854 코딩테스트 연습 - 배열 원소의 길이 문자열 배열 strlist 가 매개변수로 주어집니다. strlist 각 원소의 길이를 담은 배열을 retrun하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ strlist 원소의 길이 ≤ 100 strlist 는 알파벳 소문자, 대문자, 특수문자로 구성되어 있습니다. 입출력 예 strlist result ["We", "are", "the", "world!"] [2, 3, 3, 6] ["I", "Love", "Programmers."] [1, 4, 12] 입출력 예

Naver Blog

JavaScript_코딩테스트 입문_문자열 뒤집기_school_programmers

JavaScript_코딩테스트 입문_문자열 뒤집기_school_programmers 풀이 function solution(my_string) { // 문자열 -> 배열 -> 배열 요소 반대로 변환 -> 문자열로 합치기 return [...my_string].reverse().join(''); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120822 코딩테스트 연습 - 문자열 뒤집기 문자열 my_string 이 매개변수로 주어집니다. my_string 을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_string 의 길이 ≤ 1,000 입출력 예 my_string return "jaron" "noraj" "bread" "daerb" 입출력 예 설명 입출력 예 #1 my_string 이 "jaron"이므로 거꾸로 뒤집은 "noraj"를 return합니다. 입출력

Naver Blog

JavaScript_코딩테스트 입문_배열 뒤집기_school_programmers

JavaScript_코딩테스트 입문_배열 뒤집기_school_programmers 풀이 function solution(num_list) { // reverse()를 이용하여 요소 순서를 반대로 바꾼다. return num_list.reverse(); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120821 코딩테스트 연습 - 배열 뒤집기 정수가 들어 있는 배열 num_list 가 매개변수로 주어집니다. num_list 의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ num_list 의 길이 ≤ 1,000 0 ≤ num_list 의 원소 ≤ 1,000 입출력 예 num_list result [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]

Naver Blog

JavaScript_코딩테스트 입문_피자 나눠 먹기 1_school_programmers

JavaScript_코딩테스트 입문_피자 나눠 먹기 1_school_programmers 풀이 function solution(n) { // n이 7이하인경우 1을, 7을 초과했을 경우 n을 7로 나눈다음 올림처리한 값을 반환한다. return n <= 7 ? 1 : Math.ceil(n/7); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120814 코딩테스트 연습 - 피자 나눠 먹기 (1) 머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n 이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요. 제한사항 1 ≤ n ≤ 100 입출력 예 n result 7 1 1 1 15 3 입출력 예 설명 입출력 예 #1 7명이 최소 한 조각씩 먹기 위해서 최소 1판이 필요합니다. 입출력 예 #2 1명은 최소 한

Naver Blog

JavaScript_코딩테스트 입문_머쓱이보다 키 큰 사람_school_programmers

JavaScript_코딩테스트 입문_머쓱이보다 키 큰 사람_school_programmers 풀이 function solution(array, height) { // 배열 요소에서 height보다 큰 값을 필터링한 다음 배열 길이를 반환한다. return array.filter((v) => v > height).length; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120585 코딩테스트 연습 - 머쓱이보다 키 큰 사람 머쓱이는 학교에서 키 순으로 줄을 설 때 몇 번째로 서야 하는지 궁금해졌습니다. 머쓱이네 반 친구들의 키가 담긴 정수 배열 array 와 머쓱이의 키 height 가 매개변수로 주어질 때, 머쓱이보다 키 큰 사람 수를 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ array 의 길이 ≤ 100 1 ≤ height ≤ 200 1 ≤ array 의 원소 ≤ 200 입출력

Naver Blog

JavaScript_코딩테스트 입문_중앙값 구하기_school_programmers

JavaScript_코딩테스트 입문_중앙값 구하기_school_programmers 풀이 function solution(array) { // array 배열을 정렬한 다음 가운데 인덱스로 값을 반환한다. return array.sort((a,b) => a - b)[Math.floor(array.length / 2)]; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120811 코딩테스트 연습 - 중앙값 구하기 중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array 가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요. 제한사항 array 의 길이는 홀수입니다. 0 < array 의 길이 < 100 -1,000 < array 의 원소 < 1,000 입출력

Naver Blog

JavaScript_코딩테스트 입문_피자 나눠 먹기 3_school_programmers

JavaScript__school_programmers 풀이 function solution(slice, n) { // 나머지가 0인 경우 몫을, 0이 아닌경우 몫 + 1을 출력한다. return n % slice == 0 ? Math.floor(n / slice) : Math.floor(n / slice) + 1; } 다른 풀이 : Math.ceil(n / slice)를 하면 된다. * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120816 코딩테스트 연습 - 피자 나눠 먹기 (3) 머쓱이네 피자가게는 피자를 두 조각에서 열 조각까지 원하는 조각 수로 잘라줍니다. 피자 조각 수 slice 와 피자를 먹는 사람의 수 n 이 매개변수로 주어질 때, n 명의 사람이 최소 한 조각 이상 피자를 먹으려면 최소 몇 판의 피자를 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요. 제한사항 2 ≤ slice

Naver Blog

JavaScript_코딩테스트 입문_짝수 홀수 개수_school_programmers

JavaScript_코딩테스트 입문_짝수 홀수 개수_school_programmers 풀이 function solution(num_list) { // filter를 이용하여 짝수, 홀수 길이를 찾는다. return [num_list.filter((v) => v % 2 == 0).length, num_list.filter((v) => v % 2 == 1).length]; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120824 코딩테스트 연습 - 짝수 홀수 개수 정수가 담긴 리스트 num_list 가 주어질 때, num_list 의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ num_list 의 길이 ≤ 100 0 ≤ num_list 의 원소 ≤ 1,000 입출력 예 num_list result [1, 2, 3, 4, 5] [2, 3] [1,

Naver Blog

JavaScript_코딩테스트 입문_최댓값 만들기1_school_programmers

JavaScript_코딩테스트 입문_최댓값 만들기1_school_programmers 풀이 function solution(numbers) { // 내림차순 정렬후, 1,2번째로 큰 수를 찾아서 곱한다. return numbers.sort((a,b) => b - a).filter((v,i) => i < 2).reduce((a2,b2)=>(a2 * b2)); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120847 코딩테스트 연습 - 최댓값 만들기(1) 정수 배열 numbers 가 매개변수로 주어집니다. numbers 의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ numbers 의 원소 ≤ 10,000 2 ≤ numbers 의 길이 ≤ 100 입출력 예 numbers result [1, 2, 3, 4, 5] 20 [0, 31, 24, 10,

Naver Blog

JavaScript_코딩테스트 입문_아이스 아메리카노_school_programmers

JavaScript_코딩테스트 입문_아이스 아메리카노_school_programmers 풀이 function solution(money) { // Math.floor와 '%' 연산자를 이용하여 출력 return [Math.floor(money / 5500),money % 5500]; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120819 코딩테스트 연습 - 아이스 아메리카노 머쓱이는 추운 날에도 아이스 아메리카노만 마십니다. 아이스 아메리카노는 한잔에 5,500원입니다. 머쓱이가 가지고 있는 돈 money 가 매개변수로 주어질 때, 머쓱이가 최대로 마실 수 있는 아메리카노의 잔 수와 남는 돈을 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요. 제한사항 0 < money ≤ 1,000,000 입출력 예 money result 5,500 [1, 0] 15,000 [2, 4000] 입출력

Naver Blog

JavaScript_코딩테스트 입문_특정 문자 제거하기_school_programmers

JavaScript_코딩테스트 입문_특정 문자 제거하기_school_programmers 풀이 function solution(my_string, letter) { // 문자열을 배열로 만든 다음 letter를 제외한 나머지를 찾아 합친다. return [...my_string].filter((v) => v != letter).join(''); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120826 코딩테스트 연습 - 특정 문자 제거하기 문자열 my_string 과 문자 letter 이 매개변수로 주어집니다. my_string 에서 letter 를 제거한 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_string 의 길이 ≤ 100 letter 은 길이가 1인 영문자입니다. my_string 과 letter 은 알파벳 대소문자로 이루어져 있습니다. 대문자와 소문자를 구분합

Naver Blog

JavaScript_코딩테스트 입문_옷가게 할인 받기_school_programmers

JavaScript_코딩테스트 입문_옷가게 할인 받기_school_programmers 풀이 function solution(price) { // 삼항연산자를 이용하여 50만, 30만, 10만, 그 미만의 조건을 찾아 값을 출력한다. return price >= 500000 ? Math.floor(price * 0.8) : price >= 300000 ? Math.floor(price * 0.9) : price >= 100000 ? Math.floor(price * 0.95) : price; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120818 코딩테스트 연습 - 옷가게 할인 받기 문제 설명 머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다. 구매한 옷의 가격 price 가 주어질 때, 지불해야 할 금액을 return 하도록 solution

Naver Blog

JavaScript_코딩테스트 입문_순서쌍의 개수_school_programmers

JavaScript_코딩테스트 입문_순서쌍의 개수_school_programmers 풀이 function solution(n) { // 1부터 n까지의 배열을 만든 뒤, n을 요소로 나눴을 때 나머지가 0인 경우의 길이를 출력한다. return Array.from({length: n}, (v, i) => i + 1).filter((v2) => n % v2 == 0).length; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120836 코딩테스트 연습 - 순서쌍의 개수 순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n 이 매개변수로 주어질 때 두 숫자의 곱이 n 인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 1,000,000 입출력 예 n result 20 6 100 9 입출력 예 설명 입출력 예 #1 n

Naver Blog

JavaScript_코딩테스트 입문_배열 두 배 만들기_school_programmers

JavaScript_코딩테스트 입문_배열 두 배 만들기_school_programmers 풀이 function solution(numbers) { // 각 배열 요소값 * 2 하여 반환한다. return numbers.map((v) => v * 2); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120809 코딩테스트 연습 - 배열 두 배 만들기 정수 배열 numbers 가 매개변수로 주어집니다. numbers 의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 -10,000 ≤ numbers 의 원소 ≤ 10,000 1 ≤ numbers 의 길이 ≤ 1,000 입출력 예 numbers result [1, 2, 3, 4, 5] [2, 4, 6, 8, 10] [1, 2, 100, -99, 1, 2, 3] [2, 4, 200, -198, 2, 4, 6] 입출력 예

Naver Blog

JavaScript_코딩테스트 입문_점의 위치 구하기_school_programmers

JavaScript_코딩테스트 입문_점의 위치 구하기_school_programmers 풀이 function solution(dot) { // dot[0]의 크기 구별로 x의 위치를 구한 뒤 삼항연산자를 이용하여 y의 위치를 구한다. return dot[0] >= 0 ? (dot[1] >= 0 ? 1 : 4) : (dot[1] >= 0 ? 2 : 3); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120841 코딩테스트 연습 - 점의 위치 구하기 사분면은 한 평면을 x축과 y축을 기준으로 나눈 네 부분입니다. 사분면은 아래와 같이 1부터 4까지 번호를매깁니다. x 좌표와 y 좌표가 모두 양수이면 제1사분면에 속합니다. x 좌표가 음수, y 좌표가 양수이면 제2사분면에 속합니다. x 좌표와 y 좌표가 모두 음수이면 제3사분면에 속합니다. x 좌표가 양수, y 좌표가 음수이면 제4사분면에 속합니다. x 좌표 (x,

Naver Blog

JavaScript_코딩테스트 입문_중복된 숫자 개수_school_programmers

JavaScript_코딩테스트 입문_중복된 숫자 개수_school_programmers 풀이 function solution(array, n) { // n을 갖고 있는 배열 길이를 반환한다. return array.filter(i => i === n).length; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120583 코딩테스트 연습 - 중복된 숫자 개수 정수가 담긴 배열 array 와 정수 n 이 매개변수로 주어질 때, array 에 n 이 몇 개 있는 지를 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ array 의 길이 ≤ 100 0 ≤ array 의 원소 ≤ 1,000 0 ≤ n ≤ 1,000 입출력 예 array n result [1, 1, 2, 3, 4, 5] 1 2 [0, 2, 3, 4] 1 0 입출력 예 설명 입출력 예 #1 [1, 1, 2, 3, 4, 5] 에는 1이

Naver Blog

JavaScript_코딩테스트 입문_배열 자르기_school_programmers

JavaScript_코딩테스트 입문_배열 자르기_school_programmers 풀이 function solution(numbers, num1, num2) { // filter를 이용하여 배열 index를 두 매개변수로 자른 배열을 반환한다. return numbers.filter((v,i) => (i >= num1 && i <= num2)); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120833 코딩테스트 연습 - 배열 자르기 정수 배열 numbers 와 정수 num1 , num2 가 매개변수로 주어질 때, numbers 의 num1 번 째 인덱스부터 num2 번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해보세요. 제한사항 2 ≤ numbers 의 길이 ≤ 30 0 ≤ numbers 의 원소 ≤ 1,000 0 ≤ num1 < num2 < numbers 의 길이 입출력 예

Naver Blog

JavaScript_코딩테스트 입문_모음 제거_school_programmers

JavaScript_코딩테스트 입문_모음 제거_school_programmers 풀이 function solution(my_string) { // replace를 이용하여 정규식(영문 모음 제거)로 문자를 지운다. return my_string.replace(/a|e|i|o|u/gi,''); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120849 코딩테스트 연습 - 모음 제거 영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string 이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 my_string 은 소문자와 공백으로 이루어져 있습니다. 1 ≤ my_string 의 길이 ≤ 1,000 입출력 예 my_string result "bus" "bs" "nice to meet you" "nc t mt y" 입출력

Naver Blog

JavaScript_코딩테스트 입문_문자 반복 출력하기_school_programmers

JavaScript_코딩테스트 입문_문자 반복 출력하기_school_programmers 풀이 function solution(my_string, n) { // 문자열을 문자배열로 변환한다음, map을 이용하여 해당 문자를 n번 반복한 뒤 합친다. return [...my_string].map((v) => v.repeat(n) ).join(''); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120825 코딩테스트 연습 - 문자 반복 출력하기 문자열 my_string 과 정수 n 이 매개변수로 주어질 때, my_string 에 들어있는 각 문자를 n 만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요. 제한사항 2 ≤ my_string 길이 ≤ 5 2 ≤ n ≤ 10 "my_string"은 영어 대소문자로 이루어져 있습니다. 입출력 예 my_string n result "hello" 3

Naver Blog

JavaScript_코딩테스트 입문_숨어있는 숫자의 덧셈 1_school_programmers

JavaScript_코딩테스트 입문_숨어있는 숫자의 덧셈 1_school_programmers 풀이 function solution(my_string) { // 문자중 숫자 문자를 추출한 다음, 해당 문자들을 숫자로 변환하여 총합을 구한다. return [...my_string].filter((x) => parseInt(x)).map(Number).reduce((a,b) => a += b); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120851 코딩테스트 연습 - 숨어있는 숫자의 덧셈 (1) 문자열 my_string 이 매개변수로 주어집니다. my_string 안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_string 의 길이 ≤ 1,000 my_string 은 소문자, 대문자 그리고 한자리 자연수로만 구성되어있습니다. 입출력 예 my_string re

Naver Blog

JavaScript_코딩테스트 입문_짝수는 싫어요_school_programmers

JavaScript_코딩테스트 입문_짝수는 싫어요_school_programmers 풀이 function solution(n) { // 정수 n까지의 숫자 배열을 오름차순으로 정렬한 다음 n이하의 홀수값을 추출한다. // 사실 sort부분은 지워도 된다. return Array.from({ length: n }, (_, i) => 1 + i ).sort((a,b) => a > b).filter((x) => x <= n && x % 2 == 1); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120813 코딩테스트 연습 - 짝수는 싫어요 정수 n 이 매개변수로 주어질 때, n 이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 100 입출력 예 n result 10 [1, 3, 5, 7, 9] 15 [1, 3, 5, 7, 9, 11, 13, 15]

Naver Blog

JavaScript_코딩 기초 트레이닝_첫 번째로 나오는 음수_school_programmers

JavaScript_코딩 기초 트레이닝_첫 번째로 나오는 음수_school_programmers 풀이 function solution(num_list) { // findIndex로 음수 조건을 넣은 인덱스를 반환한다. return num_list.findIndex((v) => v < 0); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181896 코딩테스트 연습 - 첫 번째로 나오는 음수 정수 리스트 num_list 가 주어질 때, 첫 번째로 나오는 음수의 인덱스를 return하도록 solution 함수를 완성해주세요. 음수가 없다면 -1을 return합니다. 제한사항 5 ≤ num_list 의 길이 ≤ 100 -10 ≤ num_list 의 원소 ≤ 100 입출력 예 num_list result [12, 4, 15, 46, 38, -2, 15] 5 [13, 22, 53, 24, 15, 6] -1 입출력 예 설명

Naver Blog

JavaScript_코딩 기초 트레이닝_문자열로 변환_school_programmers

JavaScript_코딩 기초 트레이닝_문자열로 변환_school_programmers 풀이 function solution(n) { // 숫자를 문자열로 변환하여 반환한다. return n.toString(); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181845 코딩테스트 연습 - 문자열로 변환 문제 설명 정수 n 이 주어질 때, n 을 문자열로 변환하여 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 10000 입출력 예 n result 123 "123" 2573 "2573" 입출력 예 설명 입출력 예 #1 123을 문자열로 변환한 "123"을 return합니다. 입출력 예 #2 2573을 문자열로 변환한 "2573"을 return합니다. school.programmers.co.kr

Naver Blog

JavaScript_코딩 기초 트레이닝_배열 비교하기_school_programmers

JavaScript_코딩 기초 트레이닝_배열 비교하기_school_programmers 풀이 function solution(arr1, arr2) { // 각 배열의 총합을 구한다. const num1 = arr1.reduce((a,b) => a += b); const num2 = arr2.reduce((a,b) => a += b); // 첫번째 길이 비교 후 길이가 같을 경우 합계를 비교한다. return arr1.length > arr2.length ? 1 : arr1.length < arr2.length ? -1 : (num1 > num2 ? 1 : (num1 < num2 ? -1 : 0)); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181856 코딩테스트 연습 - 배열 비교하기 이 문제에서 두 정수 배열의 대소관계를 다음과 같이 정의합니다. 두 배열의 길이가 다르다면, 배열의 길이가 긴 쪽이 더 큽니다

Naver Blog

JavaScript_코딩 기초 트레이닝_정수 부분_school_programmers

JavaScript_코딩 기초 트레이닝_정수 부분_school_programmers 풀이 function solution(flo) { // 소수점 버림을 이용한 풀이법 return Math.floor(flo); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181850 코딩테스트 연습 - 정수 부분 문제 설명 실수 flo 가 매개 변수로 주어질 때, flo 의 정수 부분을 return하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ flo ≤ 100 입출력 예 flo result 1.42 1 69.32 69 입출력 예 설명 입출력 예 #1 1.42의 정수 부분은 1입니다. 입출력 예 #2 69.32의 정수 부분은 69입니다. school.programmers.co.kr

Naver Blog

JavaScript_코딩 기초 트레이닝_부분 문자열인지 확인하기_school_programmers

JavaScript_코딩 기초 트레이닝_부분 문자열인지 확인하기_school_programmers 풀이 function solution(my_string, target) { // 문자를 포함할 경우 해당 인덱스를 출력하는 방식을 이용한다. return my_string.indexOf(target) > -1 ? 1 : 0; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181843 코딩테스트 연습 - 부분 문자열인지 확인하기 부분 문자열이란 문자열에서 연속된 일부분에 해당하는 문자열을 의미합니다. 예를 들어, 문자열 "ana", "ban", "anana", "banana", "n"는 모두 문자열 "banana"의 부분 문자열이지만, "aaa", "bnana", "wxyz"는 모두 "banana"의 부분 문자열이 아닙니다. 문자열 my_string 과 target 이 매개변수로 주어질 때, target 이 문자열 my

Naver Blog

JavaScript_코딩 기초 트레이닝_문자열을 정수로 변환하기_school_programmers

JavaScript_코딩 기초 트레이닝_문자열을 정수로 변환하기_school_programmers 풀이 function solution(n_str) { // 문자열에 숫자를 곱해서 숫자로 반환한다. return n_str * 1; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181848 코딩테스트 연습 - 문자열을 정수로 변환하기 문제 설명 숫자로만 이루어진 문자열 n_str 이 주어질 때, n_str 을 정수로 변환하여 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n_str ≤ 5 n_str 은 0부터 9까지의 정수 문자로만 이루어져 있습니다. 입출력 예 n_str result "10" 10 "8542" 8542 입출력 예 설명 입출력 예 #1 "10"을 정수로 바꾸면 10입니다. 입출력 예 #2 "8542"를 정수로 바꾸면 8542입니다. school.programmers.co.kr

Naver Blog

JavaScript_코딩 기초 트레이닝_문자열의 앞의 n글자_school_programmers

JavaScript_코딩 기초 트레이닝_문자열의 앞의 n글자_school_programmers 풀이 function solution(my_string, n) { // 문자열의 인덱스를 이용하여 특정 구간의 문자열을 반환한다. return my_string.substring(0,n); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181907 코딩테스트 연습 - 문자열의 앞의 n글자 문자열 my_string 과 정수 n 이 매개변수로 주어질 때, my_string 의 앞의 n 글자로 이루어진 문자열을 return 하는 solution 함수를 작성해 주세요. 제한사항 my_string 은 숫자와 알파벳으로 이루어져 있습니다. 1 ≤ my_string 의 길이 ≤ 1,000 1 ≤ n ≤ my_string 의 길이 입출력 예 my_string n result "ProgrammerS123" 11 "ProgrammerS"

Naver Blog

JavaScript_코딩 기초 트레이닝_소문자로 바꾸기_school_programmers

JavaScript_코딩 기초 트레이닝_소문자로 바꾸기_school_programmers 풀이 function solution(myString) { // 모든 영문자를 소문자로 변환하는 방법 return myString.toLowerCase(); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181876 코딩테스트 연습 - 소문자로 바꾸기 문제 설명 알파벳으로 이루어진 문자열 myString 이 주어집니다. 모든 알파벳을 소문자로 변환하여 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ myString 의 길이 ≤ 100,000 myString 은 알파벳으로 이루어진 문자열입니다. 입출력 예 myString result "aBcDeFg" "abcdefg" "aaa" "aaa" school.programmers.co.kr

Naver Blog

JavaScript_코딩 기초 트레이닝_대문자로 바꾸기_school_programmers

JavaScript_코딩 기초 트레이닝_대문자로 바꾸기_school_programmers 풀이 function solution(myString) { // 모든 영문자를 대문자로 바꾸는 방법 return myString.toUpperCase(); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181877 코딩테스트 연습 - 대문자로 바꾸기 문제 설명 알파벳으로 이루어진 문자열 myString 이 주어집니다. 모든 알파벳을 대문자로 변환하여 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ myString 의 길이 ≤ 100,000 myString 은 알파벳으로 이루어진 문자열입니다. 입출력 예 myString result "aBcDeFg" "ABCDEFG" "AAA" "AAA" school.programmers.co.kr

Naver Blog

JavaScript_코딩 기초 트레이닝_rny_string_school_programmers

JavaScript_코딩 기초 트레이닝_rny_string_school_programmers 풀이 function solution(rny_string) { // replaceAll 이용하여 모든 'm'을 'rn'으로 변환한다. return rny_string.replaceAll('m',"rn"); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181863 코딩테스트 연습 - rny_string 'm'과 "rn"이 모양이 비슷하게 생긴 점을 활용해 문자열에 장난을 하려고 합니다. 문자열 rny_string 이 주어질 때, rny_string 의 모든 'm'을 "rn"으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ rny_string 의 길이 ≤ 100 rny_string 은 영소문자로만 이루어져 있습니다. 입출력 예 rny_string result "masterpiece"

Naver Blog

JavaScript_코딩 기초 트레이닝_접두사인지 확인하기_school_programmers

JavaScript_코딩 기초 트레이닝_접두사인지 확인하기_school_programmers 풀이 function solution(my_string, is_prefix) { // 특정 문자 기준으로 배열화한뒤, 첫번째 요소가 ""인 경우 1을, 아니면 0을 반환한다. return ((my_string.split(is_prefix))[0]) === "" ? 1 : 0; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181906 코딩테스트 연습 - 접두사인지 확인하기 어떤 문자열에 대해서 접두사는 특정 인덱스까지의 문자열을 의미합니다. 예를 들어, "banana"의 모든 접두사는 "b", "ba", "ban", "bana", "banan", "banana"입니다. 문자열 my_string 과 is_prefix 가 주어질 때, is_prefix 가 my_string 의 접두사라면 1을, 아니면 0을 return 하는 s

Naver Blog

JavaScript_코딩 기초 트레이닝_조건에 맞게 수열 변환하기 3_school_programmers

JavaScript_코딩 기초 트레이닝_조건에 맞게 수열 변환하기 3_school_programmers 풀이 function solution(arr, k) { // 정수 배열에서 k 값의 나머지 유무를 활용하여 푼 문제 return arr.map((v) => k % 2 == 1 ? v * k : v + k); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181835 코딩테스트 연습 - 조건에 맞게 수열 변환하기 3 문제 설명 정수 배열 arr 와 자연수 k 가 주어집니다. 만약 k 가 홀수라면 arr 의 모든 원소에 k 를 곱하고, k 가 짝수라면 arr 의 모든 원소에 k 를 더합니다. 이러한 변환을 마친 후의 arr 를 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ arr 의 길이 ≤ 1,000,000 1 ≤ arr 의 원소의 값 ≤ 100 1 ≤ k ≤ 100 입출력 예 arr k

Naver Blog

JavaScript_코딩 기초 트레이닝_정수 찾기_school_programmers

JavaScript_코딩 기초 트레이닝_정수 찾기_school_programmers 풀이 function solution(num_list, n) { // 배열 요소 중 n이 있을 경우 인덱스를 반환한다. return num_list.indexOf(n) > -1 ? 1 : 0; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181840 코딩테스트 연습 - 정수 찾기 정수 리스트 num_list 와 찾으려는 정수 n 이 주어질 때, num_list 안에 n 이 있으면 1을 없으면 0을 return하도록 solution 함수를 완성해주세요. 제한사항 3 ≤ num_list 의 길이 ≤ 100 1 ≤ num_list 의 원소 ≤ 100 1 ≤ n ≤ 100 입출력 예 num_list n result [1, 2, 3, 4, 5] 3 1 [15, 98, 23, 2, 15] 20 0 입출력 예 설명 입출력 예 #1 [1, 2,

Naver Blog

JavaScript_코딩 기초 트레이닝_배열에서 문자열 대소문자 변환하기_school_programmers

JavaScript_코딩 기초 트레이닝_배열에서 문자열 대소문자 변환하기_school_programmers 풀이 function solution(strArr) { // map을 이용한 풀이법 return strArr.map((v,i) => i % 2 == 1 ? v.toUpperCase() : v.toLowerCase()); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181875 코딩테스트 연습 - 배열에서 문자열 대소문자 변환하기 문자열 배열 strArr 가 주어집니다. 모든 원소가 알파벳으로만 이루어져 있을 때, 배열에서 홀수번째 인덱스의 문자열은 모든 문자를 대문자로, 짝수번째 인덱스의 문자열은 모든 문자를 소문자로 바꿔서 반환하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ strArr ≤ 20 1 ≤ strArr 의 원소의 길이 ≤ 20 strArr 의 원소는 알파벳으로 이루어진 문자열 입니

Naver Blog

SQL_LeetCode_577_Employee Bonus

SQL_LeetCode_577_Employee Bonus 풀이 -- ORACLE, MYSQL, MSSQL SELECT E.NAME, B.BONUS FROM EMPLOYEE E LEFT OUTER JOIN BONUS B ON E.EMPID = B.EMPID WHERE B.BONUS < 1000 OR B.BONUS IS NULL; * 출처 https://leetcode.com/problems/employee-bonus/ Employee Bonus - LeetCode Can you solve this real interview question? Employee Bonus - Table: Employee +-------------+---------+ | Column Name | Type | +-------------+---------+ | empId | int | | name | varchar | | supervisor | int | | salary | int | +-------------

Naver Blog

SQL_LeetCode_550_Game Play Analysis IV

SQL_LeetCode_550_Game Play Analysis IV 풀이 -- ORACLE SELECT ROUND(COUNT(A2.PLAYER_ID) / COUNT(A.PLAYER_ID),2) AS fraction FROM ACTIVITY A LEFT OUTER JOIN ACTIVITY A2 ON A.PLAYER_ID = A2.PLAYER_ID AND A2.EVENT_DATE = A.EVENT_DATE + 1 WHERE (A.PLAYER_ID, A.EVENT_DATE) IN ( SELECT PLAYER_ID, MIN(EVENT_DATE) FROM ACTIVITY GROUP BY PLAYER_ID ) -- MYSQL SELECT ROUND(COUNT(DISTINCT A.PLAYER_ID) / (SELECT COUNT(DISTINCT PLAYER_ID) FROM ACTIVITY),2) AS fraction FROM ACTIVITY A WHERE CONCAT(A.PLAYER_ID, A.

Naver Blog

JavaScript_코딩 기초 트레이닝_n보다 커질 때까지 더하기_school_programmers

JavaScript_코딩 기초 트레이닝_n보다 커질 때까지 더하기_school_programmers 풀이 function solution(numbers, n) { // 누적값과 n을 비교하여 조건에 맞을 경우 누적값을 반환한다. return numbers.reduce((a,b) => n >= a ? (a += b) : a ); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181884 코딩테스트 연습 - n보다 커질 때까지 더하기 제한사항 1 ≤ numbers 의 길이 ≤ 100 1 ≤ numbers 의 원소 ≤ 100 0 ≤ n < numbers 의 모든 원소의 합 입출력 예 numbers n result [34, 5, 71, 29, 100, 34] 123 139 [58, 44, 27, 10, 100] 139 239 입출력 예 설명 school.programmers.co.kr

Naver Blog

JavaScript_코딩 기초 트레이닝_n 번째 원소까지_school_programmers

JavaScript_코딩 기초 트레이닝_n 번째 원소까지_school_programmers 풀이 function solution(num_list, n) { // filter의 index를 이용한다. return num_list.filter((v,i) => (i+1) <= n); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181889 코딩테스트 연습 - n 번째 원소까지 정수 리스트 num_list 와 정수 n 이 주어질 때, num_list 의 첫 번째 원소부터 n 번째 원소까지의 모든 원소를 담은 리스트를 return하도록 solution 함수를 완성해주세요. 제한사항 2 ≤ num_list 의 길이 ≤ 30 1 ≤ num_list 의 원소 ≤ 9 1 ≤ n ≤ num_list 의 길이 ___ 입출력 예 num_list n result [2, 1, 6] 1 [2] [5, 2, 1, 7, 5] 3 [5, 2,

Naver Blog

JavaScript_코딩 기초 트레이닝_문자열의 뒤의 n글자_school_programmers

JavaScript_코딩 기초 트레이닝_문자열의 뒤의 n글자_school_programmers 풀이 function solution(my_string, n) { // slice를 이용, 문자열 길이에서 'n'을 뺀 값부터 문자열 길이를 매개변수로 줄 경우 문자열 뒤부터 n글자로 이뤄진 문자열을 반환한다. return my_string.slice(my_string.length-n,my_string.length); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181910 코딩테스트 연습 - 문자열의 뒤의 n글자 문자열 my_string 과 정수 n 이 매개변수로 주어질 때, my_string 의 뒤의 n 글자로 이루어진 문자열을 return 하는 solution 함수를 작성해 주세요. 제한사항 my_string 은 숫자와 알파벳으로 이루어져 있습니다. 1 ≤ my_string 의 길이 ≤ 1,000 1 ≤ n ≤ m

Naver Blog

JavaScript_코딩 기초 트레이닝_문자열 정수의 합_school_programmers

JavaScript_코딩 기초 트레이닝_문자열 정수의 합_school_programmers 풀이 function solution(num_str) { // 문자열을 문자 배열로 변환한다음, 해당 문자를 숫자로 변환 후 숫자들의 누적값을 반환한다. return [...num_str].map(Number).reduce((a,b) => a += b); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181849 코딩테스트 연습 - 문자열 정수의 합 문제 설명 한 자리 정수로 이루어진 문자열 num_str 이 주어질 때, 각 자리수의 합을 return하도록 solution 함수를 완성해주세요. 제한사항 3 ≤ num_str ≤ 100 입출력 예 num_str result "123456789" 45 "1000000" 1 입출력 예 설명 입출력 예 #1 문자열 안의 모든 숫자를 더하면 45가 됩니다. 입출력 예 #2 문자열 안의

Naver Blog

JavaScript_코딩 기초 트레이닝_조건에 맞게 수열 변환하기 1_school_programmers

JavaScript_코딩 기초 트레이닝_조건에 맞게 수열 변환하기 1_school_programmers 풀이 function solution(arr) { // 삼항연산자와 map을 이용하여 푼 문제이다. return arr.map((v) => v = (v >= 50 && v % 2 == 0 ? v / 2 : (v < 50 && v % 2 == 1) ? v * 2 : v)); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181882 코딩테스트 연습 - 조건에 맞게 수열 변환하기 1 정수 배열 arr 가 주어집니다. arr 의 각 원소에 대해 값이 50보다 크거나 같은 짝수라면 2로 나누고, 50보다 작은 홀수라면 2를 곱합니다. 그 결과인 정수 배열을 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ arr 의 길이 ≤ 1,000,000 1 ≤ arr 의 원소의 값 ≤ 100 입출력 예 ar

Naver Blog

JavaScript_코딩 기초 트레이닝_길이에 따른 연산_school_programmers

JavaScript_코딩 기초 트레이닝_길이에 따른 연산_school_programmers 풀이 function solution(num_list) { // reduce를 이용한 풀이법 return num_list.length <= 10 ? num_list.reduce((a,b) => a *= b) : num_list.reduce((a,b) => a += b); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181879 코딩테스트 연습 - 길이에 따른 연산 정수가 담긴 리스트 num_list 가 주어질 때, 리스트의 길이가 11 이상이면 리스트에 있는 모든 원소의 합을 10 이하이면 모든 원소의 곱을 return하도록 solution 함수를 완성해주세요. 제한사항 2 ≤ num_list 의 길이 ≤ 20 1 ≤ num_list 의 원소 ≤ 9 입출력 예 num_list result [3, 4, 5, 2, 5, 4,

Naver Blog

JavaScript_코딩 기초 트레이닝_부분 문자열_school_programmers

JavaScript_코딩 기초 트레이닝_부분 문자열_school_programmers 풀이 function solution(str1, str2) { // str2에 str1의 인덱스를 반환하는 방법을 이용한다. return str2.indexOf(str1) > -1 ? 1 : 0; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181842 코딩테스트 연습 - 부분 문자열 어떤 문자열 A가 다른 문자열 B안에 속하면 A를 B의 부분 문자열이라고 합니다. 예를 들어 문자열 "abc"는 문자열 "aabcc"의 부분 문자열입니다. 문자열 str1 과 str2 가 주어질 때, str1 이 str2 의 부분 문자열이라면 1을 부분 문자열이 아니라면 0을 return하도록 solution 함수를 완성해주세요. 제한 사항 1 ≤ str1 ≤ str2 ≤ 20 str1 과 str2 는 영어 소문자로만 이루어져 있습니다. 입출력 예

Naver Blog

JavaScript_코딩 기초 트레이닝_배열 만들기 1_school_programmers

JavaScript_코딩 기초 트레이닝_배열 만들기 1_school_programmers 풀이 function solution(n, k) { // 0부터 n - 1까지의 배열을 만든 다음 map의 index를 이용하여 요소를 채우고, 요소값이 k배수일 경우 반환한다. return Array(n).fill().map((v,i) => i+1).filter((v) => v % k == 0); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181901 코딩테스트 연습 - 배열 만들기 1 정수 n 과 k 가 주어졌을 때, 1 이상 n 이하의 정수 중에서 k 의 배수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ n ≤ 1,000,000 1 ≤ k ≤ min(1,000, n) 입출력 예 n k result 10 3 [3, 6, 9] 15 5 [5, 10, 15] 입출력

Naver Blog

JavaScript_코딩 기초 트레이닝_꼬리 문자열_school_programmers

JavaScript_코딩 기초 트레이닝_꼬리 문자열_school_programmers 풀이 function solution(str_list, ex) { // 요소에서 ex를 찾을 수 없는 경우 -1을 반환하는 indexOf와 join을 이용하여 배열요소를 문자열로 합친다. return str_list.filter((v) => v.indexOf(ex) == -1).join(""); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181841?language=javascript 코딩테스트 연습 - 꼬리 문자열 문자열들이 담긴 리스트가 주어졌을 때, 모든 문자열들을 순서대로 합친 문자열을 꼬리 문자열이라고 합니다. 꼬리 문자열을 만들 때 특정 문자열을 포함한 문자열은 제외시키려고 합니다. 예를 들어 문자열 리스트 ["abc", "def", "ghi"]가 있고 문자열 "ef"를 포함한 문자열은 제외하고 꼬리 문자열을 만들면

Naver Blog

JavaScript_코딩 기초 트레이닝_문자열 잘라서 정렬하기_school_programmers

JavaScript_코딩 기초 트레이닝_문자열 잘라서 정렬하기_school_programmers 풀이 function solution(myString) { // "x"를 기준으로 나눴을 때 공백부분을 제거해준 뒤 정렬한다. return myString.split("x").filter(v=> v != "").sort(); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181866 코딩테스트 연습 - 문자열 잘라서 정렬하기 문자열 myString 이 주어집니다. "x"를 기준으로 해당 문자열을 잘라내 배열을 만든 후 사전순으로 정렬한 배열을 return 하는 solution 함수를 완성해 주세요. 단, 빈 문자열은 반환할 배열에 넣지 않습니다. 제한사항 1 ≤ myString ≤ 100,000 myString 은 알파벳 소문자로 이루어진 문자열입니다. 입출력 예 myString result "axbxcxdx" ["a"

Naver Blog

JavaScript_코딩 기초 트레이닝_특별한 이차원 배열 1_school_programmers

JavaScript_코딩 기초 트레이닝_특별한 이차원 배열 1_school_programmers 풀이 // map문을 사용하여 푼 방식 function solution(n) { // 배열 안에 배열을 만든뒤 0으로 채운다. const arr = Array(n).fill(Array(n).fill(0)); // map을 이용하여 1차원 배열 값을 반환하여 2차원 배열에 세팅해준 다음 2차원 배열을 반환한다. return arr.map((v, i) => { return v.map((v2,i2) => v2 = i == i2 ? 1 : 0); }); } // for문을 사용하여 푼 방식 function solution(n) { // 배열 안에 배열을 만든뒤 0으로 채운다. const arr = Array.from(Array(n), () => Array(n).fill(0)); for(var i = 0; i <n ; i++){ arr[i][i] = 1 } return arr; } 배열 안에 배열

Naver Blog

JavaScript_코딩 기초 트레이닝_마지막 두 원소_school_programmers

JavaScript_코딩 기초 트레이닝_마지막 두 원소_school_programmers 풀이 function solution(num_list) { // 마지막 원소, 그 전 원소만 비교하여 조건에 맞춰 마지막 원소로 추가한다. num_list.push(num_list[num_list.length-1] > num_list[num_list.length-2] ? num_list[num_list.length-1] - num_list[num_list.length-2] : num_list[num_list.length-1] * 2 ); return num_list; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181927 코딩테스트 연습 - 마지막 두 원소 정수 리스트 num_list 가 주어질 때, 마지막 원소가 그전 원소보다 크면 마지막 원소에서 그전 원소를 뺀 값을 마지막 원소가 그전 원소보다 크지 않다면 마지막 원소

Naver Blog

JavaScript_코딩 기초 트레이닝_수 조작하기 1_school_programmers

JavaScript_코딩 기초 트레이닝_수 조작하기 1_school_programmers 풀이 function solution(n, control) { // filter를 이용, 조건에 맞춰서 값을 계산해준다. return n + [...control].filter(v => v == "w").length - [...control].filter(v => v == "s").length + 10 * [...control].filter(v => v == "d").length - (10 * [...control].filter(v => v == "a").length); } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181926 코딩테스트 연습 - 수 조작하기 1 정수 n 과 문자열 control 이 주어집니다. control 은 "w", "a", "s", "d"의 4개의 문자로 이루어져 있으며, control 의 앞에서부터

Naver Blog

JavaScript_코딩 기초 트레이닝_조건 문자열_school_programmers

JavaScript_코딩 기초 트레이닝_조건 문자열_school_programmers 풀이 function solution(ineq, eq, n, m) { // eval을 이용하여 푼 문제 // 사실 보안상 권장하지 않음 return Number(eval(n + ineq + (eq != '!' ? '=' : '') + m)); } 개인적으로, eval() 사용을 권장하진 않는다. * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181934 코딩테스트 연습 - 조건 문자열 문자열에 따라 다음과 같이 두 수의 크기를 비교하려고 합니다. 두 수가 n 과 m 이라면 ">", "=" : n >= m "<", "=" : n <= m ">", "!" : n > m "<", "!" : n < m 두 문자열 ineq 와 eq 가 주어집니다. ineq 는 "<"와 ">"중 하나고, eq 는 "="와 "!"중 하나입니다. 그리고 두 정수

Naver Blog

JavaScript_코딩 기초 트레이닝_flag에 따라 다른 값 반환하기_school_programmers

JavaScript_코딩 기초 트레이닝_flag에 따라 다른 값 반환하기_school_programmers 풀이 function solution(a, b, flag) { // 삼항연산자로 논리값에 따라 계산한 뒤 반환 return flag ? a + b : a - b; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181933 코딩테스트 연습 - flag에 따라 다른 값 반환하기 두 정수 a , b 와 boolean 변수 flag 가 매개변수로 주어질 때, flag 가 true면 a + b 를 false면 a - b 를 return 하는 solution 함수를 작성해 주세요. 제한사항 -1000 ≤ a , b ≤ 1,000 입출력 예 a b flag result -4 7 true 3 -4 7 false -11 입출력 예 입출력 예 #1 예제 1번에서 flag 가 true이므로 a + b = (-4) + 7 = 3을

Naver Blog

JavaScript_코딩 기초 트레이닝_코드 처리하기_school_programmers

JavaScript_코딩 기초 트레이닝_코드 처리하기_school_programmers 풀이 function solution(code) { let str = ""; let mode = 0; [...code].map((val, idx) => { // mode 조건 적용 if(val == "1" && mode == 0) mode = 1; else if(val == "1" && mode == 1) mode = 0; // 위에 따라 나온 값 판별 후 1이 아닐 경우 더하기 if((mode == 0 && idx % 2 == 0 ) || (mode == 1 && (idx % 2 == 1)) ){ str += val != "1" ? val : ""; } }); // 만약 빈 문자열일 경우 "EMPTY"를 출력 return str == "" ? "EMPTY" : str; } * 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181932

1 2 3 4 5 6 7 8 9 10