Programmers 41

Programmers 문제 풀이 33

문제 설명 : 저주의 숫자 3 3x 마을 사람들은 3을 저주의 숫자라고 생각하기 때문에 3의 배수와 숫자 3을 사용하지 않습니다. 3x 마을 사람들의 숫자는 다음과 같습니다. 10진법 3x 마을에서 쓰는 숫자 10진법 3x 마을에서 쓰는 숫자 1 1 6 8 2 2 7 10 3 4 8 11 4 5 9 14 5 7 10 16 정수 n이 매개변수로 주어질 때, n을 3x 마을에서 사용하는 숫자로 바꿔 return 하는 solution 함수??? 제한 사항 1 ≤ n ≤ 100 입출력 예 n result 15 25 40 76 문제 풀이 인덱스는 0부터시작하니까 n-1만큼의 3의 배수가 아니고 숫자 3이 들어가지도 않는 수 배열을 만들어준 다음 배열의 마지막 인수를 빼주었다. function solution(n)..

Programmers 2023.07.31

Programmers 문제 풀이 32

문제 설명 : 특이한 정렬 정수 n을 기준으로 n과 가까운 수부터 정렬하려고 한다. 이때 n으로부터의 거리가 같다면 더 큰 수를 앞에 오도록 배치한다. 정수가 담긴 배열 numlist와 정수 n이 주어질 때 numlist의 원소를 n으로부터 가까운 순서대로 정렬한 배열을 return 하는 solution 함수??? 제한 사항 1 ≤ n ≤ 10,000 1 ≤ numlist의 원소 ≤ 10,000 1 ≤ numlist의 길이 ≤ 100 numlist는 중복된 원소를 갖지 않는다. 입출력 예 numlist n result [1, 2, 3, 4, 5, 6] 4 [4, 5, 3, 6, 2, 1] [10000,20,36,47,40,6,10,7000] 30 [36, 40, 20, 47, 10, 6, 7000, 10..

Programmers 2023.07.28

Programmers 문제 풀이 31

문제 설명 : 치킨 쿠폰 치킨을 시켜 먹으면 한 마리당 쿠폰을 한 장 발급한다. 쿠폰을 열 장 모으면 치킨을 한 마리 서비스로 받을 수 있고, 서비스 치킨에도 쿠폰이 발급된다. 시켜 먹은 치킨의 수 chicken이 매개변수로 주어질 때 받을 수 있는 최대 서비스 치킨의 수를 reutrn 하는 solution함수??? 제한 사항 chicken은 정수 0 ≤ chicken ≤ 1,000,000 입출력 예 chicken result 100 11 1,081 120 문제 풀이 while문을 사용해서 서비스로 받은 치킨의 쿠폰까지 다 해서 10개가 남지 않도록 반복문을 돌려서 해결. function solution(chicken) { var answer = 0; while(chicken >= 10) { answer..

Programmers 2023.07.27

Programmers 문제 풀이 30

문제 설명 : k의 개수 1부터 13까지의 수에서, 1은 1, 10, 11, 12, 13 이렇게 총 6번 등장한다. 정수 i, j, k가 매개변수로 주어질 때, i부터 j까지 k가 몇 번 등장하는지 return 하는 solution 함수는???? 제한사항 1 ≤ i < j ≤ 100,000 0 ≤ k ≤ 9 입출력예 i j k result 1 13 1 6 10 50 5 5 3 10 2 0 문제 풀이 i부터 j까지 문자열로 만들고 그걸 split으로 각 문자를 배열로 만들어 준다음 filter를 사용해서 k와같은 숫자들만 구해서 길이를 구했다. v*1은 문자인 str의 원소를 숫자로 바꿔서 k와 같은지를 확인할 수 있게 만든 것이다. function solution(i, j, k) { let str = "..

Programmers 2023.06.28

Programmers 문제 풀이 29

문제 설명 : 369게임 369게임은 1부터 숫자를 하나씩 대며 3, 6, 9가 들어가는 숫자는 숫자대신 3, 6, 9의 개수만큼 박수를 치는 게임이다. 머쓱이가 말해야 하는 숫자 order가 매개변수로 주어질 때, 머쓱이가 쳐야 할 박수 횟수를 return 하는 solution함수??? 제한 사항 1 ≤ order ≤ 1,000,000 입출력예 order result 3 1 29423 2 문제 풀이 order를 문자열로 바꿔서 for문을 돌며 3,6,9중 하나일 때는 count++해주었다. function solution(order) { let count = 0 let str = order.toString() for(let i =0; i a-b).map((v) => Math.abs(v-n)) let i..

Programmers 2023.06.27

Programmers 문제 풀이 28

문제 설명 : 인덱스 바꾸기 문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하는 solution 함수?? 제한사항 1 < my_string의 길이 < 100 0 ≤ num1, num2 < my_string의 길이 my_string은 소문자로 이루어져 있다. num1 ≠ num2 입출력예 my_string num1 num2 result "hello" 1 2 "hlelo" "I love you" 3 6 "I l veoyou" 문제 풀이 접근1) 새로운 문자열에 하나씩 더해주다가 num1의 인덱스가 나오면 num2의 값을 넣어주고, num2의 인덱스가 나오면 num1의 값을 넣어줬..

Programmers 2023.06.24

Programmers 문제 풀이 27

문제 설명 : 가장 큰 수 찾기 정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하는 solution 함수는??? 제한사항 1 ≤ array의 길이 ≤ 100 0 ≤ array 원소 ≤ 1,000 array에 중복된 숫자는 없습니다. 입출력 예 array result [1, 8, 3] [8, 1] [9, 10, 11, 8] [11, 2] 문제 풀이 큰 수를 구해주는 Math.max와 배열을 흩뿌려주는 '...' 스프레드 연산자를 사용한 후 배열에 값을 넣어서 풀었다. function solution(array) { return [Math.max(...array),array.indexOf(Math.max(...array))] } 문제 설명 : 약수 구..

Programmers 2023.06.23

Programmers 문제 풀이 26

문제 설명 : OX퀴즈 덧셈, 뺄셈 수식들이 'X [연산자] Y = Z' 형태로 들어있는 문자열 배열 quiz가 매개변수로 주어진다. 수식이 옳다면 "O"를 틀리다면 "X"를 순서대로 담은 배열을 return하는 solution함수??? 제한사항 연산 기호와 숫자 사이는 항상 하나의 공백이 존재한다. 단 음수를 표시하는 마이너스 기호와 숫자 사이에는 공백이 존재하지 않는다. 1 ≤ quiz의 길이 ≤ 10 X, Y, Z는 각각 0부터 9까지 숫자로 이루어진 정수를 의미하며, 각 숫자의 맨 앞에 마이너스 기호가 하나 있을 수 있고 이는 음수를 의미한다. X, Y, Z는 0을 제외하고는 0으로 시작하지 않는다. -10,000 ≤ X, Y ≤ 10,000 -20,000 ≤ Z ≤ 20,000 [연산자]는 +와..

Programmers 2023.06.22