프로그래머스 문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12922
내가 제출한 풀이
func solution(_ n:Int) -> String {
let value = String(repeating: "수박", count: n/2)
return n % 2 != 0 ? "\(value)수" : value
}
풀이 과정
길이 n이 주어졌을 때 "수박수박수..." 패턴을 유지하며 n만큼 문자열을 반환하는 문제이다.
n == 2
-> 수박
n == 3
-> 수박수
n == 4
-> 수박수박
n == 5
-> 수박수박수
n == 13
-> 수박수박수박수박수박수박수
같은 문자열이 반복되므로 나는 init(repeating: count:) 를 사용했다.
repeating에는 반복할 문자, count에는 반복할 횟수를 적는다.
나는 "수박"을 repeating에 넣었다. "수박"은 2글자 이기 때문에 n을 2로 나누어서 대입한다.
n이 짝수일 경우에는 "박"으로 끝나기 때문에 괜찮지만 홀수라면 "수"로 끝나기 때문에, 반복한 문자열에 "수"를 붙여서 반환한다.
let value = String(repeating: "수박", count: n/2)
return n % 2 != 0 ? "\(value)수" : value
n == 2 -> 수박
n == 3 -> 수박수
'알고리즘 > Programmers' 카테고리의 다른 글
[Swift_Programmes] 약수의 개수와 덧셈 🌟 (0) | 2023.11.27 |
---|---|
[Swift_Programmes] 내적 (0) | 2023.11.27 |
[Swift_Programmes] 가운데 글자 가져오기 (1) | 2023.11.27 |
[Swift_Programmes] 없는 숫자 더하기 (2) | 2023.11.23 |
[Swift_Programmes] 핸드폰 번호 가리기 (0) | 2023.11.23 |