문제
문자열 s가 주어졌을 때, s의 각각의 문자를 index만큼 증가시켜주는 문제
만일 사이에 skip 문자가 포함되어있다면 건너뛰고 증가
s가 "abc" 이고 index가 1이라면 "bcd" 이며, 만일 skip : "d" 라면 d를 건너뛴 "bce"
풀이 방법
1. 아스키코드 이용
2. inc() 메서드를 이용
저는 1번으로 풀었습니다.
코드
class Solution {
fun solution(s: String, skip: String, index: Int): String {
var answer = ""
// a : 97 z : 122 .toChar()
for(i in s){
var asc = i.toInt()
var count = 0
while(count < index){
asc += 1 // 'a'.inc() 로도 증가시킬 수 있음 // 'a'.inc() == 'b'
if(asc > 122) asc = 97
if(!skip.contains(asc.toChar())){
count++
}
}
answer += asc.toChar()
}
return answer
}
}
'코딩 테스트 > Lv.1' 카테고리의 다른 글
[프로그래머스] 실패율 with Kotlin (0) | 2023.11.06 |
---|---|
[프로그래머스] 크레인 인형뽑기 게임 (0) | 2023.11.06 |
[프로그래머스] 키패드 누르기 with Kotlin (0) | 2023.11.06 |
[프로그래머스] 햄버거 만들기 with Kotlin (0) | 2023.11.06 |
[프로그래머스] 바탕화면 정리 with Kotlin (0) | 2023.11.06 |