Programmers/Level 1
[Javascript] 프로그래머스 : 수박수박수박수박수박수?
emayom
2021. 6. 28. 15:05
⚠️ 아래 내용은 모두 개인적인 참고 / 기록을 위한 용도 입니다. 참고해주시고 편안하게 봐주세요 :) ⚠️
[Javascript] 프로그래머스 Level1 _ 수박수박수박수박수박수?
👇🏻문제링크
👇🏻
시행착오
( + 코드를 작성하면서든 생각들.)
1.
n이 짝수라면 n/2한 만큼 "수박"을 반복해서 출력하면되고,
n이 홀수라면 n/2한 만큼 "수박"을 반복하고 + "수"를 붙여서 출력하면 된다.
function solution(n) {
return (n%2==0)? "수박".repeat(n/2) : "수박".repeat(n/2)+"수";
}
2.
"수박".repeat(n/2)가 반복되는 패턴이라
그냥 원래 문제에 세팅되어있던 answer에 식을 대입했다!
그리고 n%2 == 0 이 아닌 n%2으로 조건문을 설정했다.
그래서 홀수 = 1일 경우(조건문에서 0 = false, 1 = true) answer +"수"를 더하여 출력하도록 했다.
function solution(n) {
let answer = "수박".repeat(n/2);
return (n%2)? answer+="수" : answer;
//(n%2 == 0)? => 짝수가 참
//(n%2)? => 홀수가 참
}
3.
다른 사람들은 어떻게 풀었나 보다가 깔끔해보여서 참고하려고 가져왔다!
(자바스크립트에서는 UTF-8 한글 문자열 하나에 3byte로 취급한다.)
n의 최대가 10000이라서 이렇게 작성해도 차이가 크지않아 이렇게 작성해도 좋을 것 같다.
"수박" 자체를 오버되더라도 n만큼 반복을 한 뒤, slice로 필요한 만큼 잘라내서 출력했다.
function solution(n) {
const answer = n => "수박".repeat(n).slice(0,n);
return answer;
}