[프로그래머스] 코테_day 5

jiyunssu·2022년 9월 10일
0

코딩테스트

목록 보기
7/9
post-thumbnail

문제 설명

길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.

제한 조건

n은 길이 10,000이하인 자연수입니다.

입출력 예

n return
3 "수박수"
4 "수박수박"

n의 개수만큼 수박수를 반복하는거다
n이 7이면 수박수박수박수

토마토마토
토맛토마토

내 풀이법

while문 써서 숫자 수 만큼 수/박 을 번갈아가면서 반환하도록 짜봐야겠다.
근데 생각처럼 안돼서 for문 썼다

아 되는대로 써봤는데 답이 너무 웃기다.
박박박박웃겨

function solution(n) {
    let watermelon = ""
    
for(let i = 1; i<=n; i++) {
    if(i%2===0) {
        watermelon += "박"
    } else {
        watermelon += "수"
    }
} return watermelon
}

if문에 n이 아니라 i가 들어가야 n의 수만큼 홀수일 때 수, 짝수일 때 박이
제대로 반환된다

if문 썼으니까 삼항연산자로 코드 길이를 줄여보겠다

function solution(n) {
    let watermelon = ""

for(let i = 1; i<=n; i++) {
    watermelon += i%2===0 ? "박" : "수"
} return watermelon;
}

이게뭐야

function waterMelon(n){
  var result = "수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박수박"
  //함수를 완성하세요

  return result.substring(0,n);
}

한줄코드

const waterMelon = n => "수박".repeat(n).slice(0,n);

0개의 댓글