🗃️javascript/프로그래머스 169

2016년(js , Lv1)[객체 사용]

2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요. 제한 조건 2016년은 윤년입니다. 2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다) 입출력 예 abresult 5 24 "TUE" 객체로 처음부터 풀 생각해서 누적값 구하는 방식으로 구했는데... Date 객체 구하는 방식 쓰는 사람도 많고, 내가 너무 브루트포스 방식에..

접미사인지 확인하기(LV.0)[계속 생각하면 좋은 코드가 나올지도?]

어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다. 예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다. 문자열 my_string과 is_suffix가 주어질 때, is_suffix가 my_string의 접미사라면 1을, 아니면 0을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ my_string의 길이 ≤ 100 1 ≤ is_suffix의 길이 ≤ 100 my_string과 is_suffix는 영소문자로만 이루어져 있습니다. 입출력 예my_stringis_suffixresult "banana" "ana" 1 "banana" "nan" 0 "banana" "wxyz" 0 "ba..

[1차] 비밀지도(Lv.1)[코드는 길지만 포기하진 않았다.]

네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로 이루어져 있다. 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 "지도 1"과 "지도 2"라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공백인 부분은 전체 지도에서도 공백이다. "지도 1"과 "지도 2"는 각각 정수 배열로 암호화되어 있다. 암호화된 배열은 지도의 각 가로줄에서 벽..

공백으로 구분하기 2(Lv.0)[마음이 급하면 쉬운것도 잘 안되네]

단어가 공백 한 개 이상으로 구분되어 있는 문자열 my_string이 매개변수로 주어질 때, my_string에 나온 단어를 앞에서부터 순서대로 담은 문자열 배열을 return 하는 solution 함수를 작성해 주세요. 제한사항 my_string은 영소문자와 공백으로만 이루어져 있습니다. 1 ≤ my_string의 길이 ≤ 1,000 my_string의 맨 앞과 맨 뒤에도 공백이 있을 수 있습니다. my_string에는 단어가 하나 이상 존재합니다. 입출력 예my_stringresult " i love you" ["i", "love", "you"] " programmers " ["programmers"] 입출력 예 설명 입출력 예 #1 예제 1번의 my_string은 " i love you"로 공백을 ..

홀수 vs 짝수(Lv.0)[map은 기존 배열 수정x || forEach는 기존 배열수]

정수 리스트 num_list가 주어집니다. 가장 첫 번째 원소를 1번 원소라고 할 때, 홀수 번째 원소들의 합과 짝수 번째 원소들의 합 중 큰 값을 return 하도록 solution 함수를 완성해주세요. 두 값이 같을 경우 그 값을 return합니다. 제한사항 5 ≤ num_list의 길이 ≤ 50 -9 ≤ num_list의 원소 ≤ 9 입출력 예num_listresult [4, 2, 6, 1, 7, 6] 17 [-1, 2, 5, 6, 3] 8 입출력 예 설명 입출력 예 #1 홀수 번째 원소들의 합은 4 + 6 + 7 = 17, 짝수 번째 원소들의 합은 2 + 1 + 6 = 9 이므로 17을 return합니다. 입출력 예 #2 홀수 번째 원소들의 합은 -1 + 5 + 3 = 7, 짝수 번째 원소들의 합..

배열 만들기 1(Lv.0)[Array(배열길이).fill(채울요소)]

정수 n과 k가 주어졌을 때, 1 이상 n이하의 정수 중에서 k의 배수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ n ≤ 1,000,000 1 ≤ k ≤ min(1,000, n) 입출력 예nkresult 10 3 [3, 6, 9] 15 5 [5, 10, 15] 입출력 예 설명 입출력 예 #1 1 이상 10 이하의 3의 배수는 3, 6, 9 이므로 [3, 6, 9]를 return 합니다. 입출력 예 #2 1 이상 15 이하의 5의 배수는 5, 10, 15 이므로 [5, 10, 15]를 return 합니다. 정석처럼 품. 아쉽다. function solution(n, k) { let result = []; for(let i=1; iArray(~~(n..

명예의 전당 (1)(Lv.1)[stack으로 풀어보자.]

"명예의 전당"이라는 TV 프로그램에서는 매일 1명의 가수가 노래를 부르고, 시청자들의 문자 투표수로 가수에게 점수를 부여합니다. 매일 출연한 가수의 점수가 지금까지 출연 가수들의 점수 중 상위 k번째 이내이면 해당 가수의 점수를 명예의 전당이라는 목록에 올려 기념합니다. 즉 프로그램 시작 이후 초기에 k일까지는 모든 출연 가수의 점수가 명예의 전당에 오르게 됩니다. k일 다음부터는 출연 가수의 점수가 기존의 명예의 전당 목록의 k번째 순위의 가수 점수보다 더 높으면, 출연 가수의 점수가 명예의 전당에 오르게 되고 기존의 k번째 순위의 점수는 명예의 전당에서 내려오게 됩니다. 이 프로그램에서는 매일 "명예의 전당"의 최하위 점수를 발표합니다. 예를 들어, k = 3이고, 7일 동안 진행된 가수의 점수가 ..

rny_string(Lv.0)[정규표현식 단순이용]

'm'과 "rn"이 모양이 비슷하게 생긴 점을 활용해 문자열에 장난을 하려고 합니다. 문자열 rny_string이 주어질 때, rny_string의 모든 'm'을 "rn"으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ rny_string의 길이 ≤ 100 rny_string은 영소문자로만 이루어져 있습니다. 입출력 예rny_stringresult "masterpiece" "rnasterpiece" "programmers" "prograrnrners" "jerry" "jerry" "burn" "burn" 입출력 예 설명 입출력 예 #1 예제 1번의 rny_string의 'm'을 "rn"으로 바꾸는 과정을 표로 나타내면 다음과 같습니다.rny_stringmaste..

글자 이어 붙여 문자열 만들기(Lv.0)[더 짧게 잘 풀고싶다.]

문자열 my_string과 정수 배열 index_list가 매개변수로 주어집니다. my_string의 index_list의 원소들에 해당하는 인덱스의 글자들을 순서대로 이어 붙인 문자열을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ my_string의 길이 ≤ 1,000 my_string의 원소는 영소문자로 이루어져 있습니다. 1 ≤ index_list의 길이 ≤ 1,000 0 ≤ index_list의 원소 my_string.slice(x, x+1)).join("") } 두 매개변수를 하나의 메서드 reduce로 조절했다. function solution(my_string, index_list) { return index_list.reduce((result, i) => res..

문자열 바꿔서 찾기(Lv.0)[불리언에 +연산자를 붙이면 1,0으로 형변환]

문자 "A"와 "B"로 이루어진 문자열 myString과 pat가 주어집니다. myString의 "A"를 "B"로, "B"를 "A"로 바꾼 문자열의 연속하는 부분 문자열 중 pat이 있으면 1을 아니면 0을 return 하는 solution 함수를 완성하세요. 제한사항 1 ≤ myString의 길이 ≤ 100 1 ≤ pat의 길이 ≤ 10 myString과 pat는 문자 "A"와 "B"로만 이루어진 문자열입니다. 입출력 예myStringpatresult "ABBAA" "AABB" 1 "ABAB" "ABAB" 0 입출력 예 설명 입출력 예 #1 "ABBAA"에서 "A"와 "B"를 서로 바꾸면 "BAABB"입니다. 여기에는 부분문자열 "AABB"가 있기 때문에 1을 return 합니다. 입출력 예 #2 "A..