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 |
입출력 예 설명
입출력 예 #1
- 본문과 동일합니다.
입출력 예 #2
- 10부터 50까지 5는 15, 25, 35, 45, 50 총 5번 등장합니다. 따라서 5를 return 합니다.
입출력 예 #3
- 3부터 10까지 2는 한 번도 등장하지 않으므로 0을 return 합니다.
제출
import Foundation
func solution(_ i:Int, _ j:Int, _ k:Int) -> Int {
var answer = 0
for num in i...j{
if String(num).contains(String(k)) {
answer += String(num).filter{String($0) == String(k)}.count
}
}
return answer
}
i부터 j까지 num 변수를 1씩 증가시키면서, num을 String으로 변환했을 때 k가 존재하면 answer 변수에 num에서 k의 개수를 더한다.
반응형
'📖 Coding Test > Programmers LV.0' 카테고리의 다른 글
[프로그래머스 LV.0] 삼각형의 완성조건 (1) (0) | 2023.01.07 |
---|---|
[프로그래머스 LV.0] 중복된 문자 제거 (0) | 2023.01.07 |
[프로그래머스 LV.0] A로 B 만들기 (0) | 2023.01.07 |
[프로그래머스 LV.0] 이진수 더하기 (0) | 2023.01.06 |
[프로그래머스 LV.0] 치킨 쿠폰 (0) | 2023.01.06 |
댓글