[프로그래머스] Lv.0 수 조작하기 1.java

김엄지·2024년 3월 27일

알고리즘

목록 보기
26/90

🐤 목표

앞으로 매일 꾸준히 코딩테스트를 진행하면서 단계를 높여가보자.

문제 설명

정수 n과 문자열 control이 주어집니다. control은 "w", "a", "s", "d"의 4개의 문자로 이루어져 있으며, control의 앞에서부터 순서대로 문자에 따라 n의 값을 바꿉니다.

"w" : n이 1 커집니다.
"s" : n이 1 작아집니다.
"d" : n이 10 커집니다.
"a" : n이 10 작아집니다.
위 규칙에 따라 n을 바꿨을 때 가장 마지막에 나오는 n의 값을 return 하는 solution 함수를 완성해 주세요.

제한사항

-100,000 ≤ n ≤ 100,000
1 ≤ control의 길이 ≤ 100,000
control은 알파벳 소문자 "w", "a", "s", "d"로 이루어진 문자열입니다.

문제 풀이

class Solution {
    public int solution(int n, String control) {
        int answer = n;
        for(char ch : control.toCharArray()) {
            switch(ch) {
                case 'w' : answer += 1;
                    break;
                case 's' : answer -= 1;
                    break;
                case 'd' : answer += 10;
                    break;
                case 'a' : answer -= 10;
                    break;
            }
        }
        return answer;
    }
}

1) 문자열 control의 요소들을 돌아야하니 for문 사용
2) 문자열에서 toCharArray를 이용하여 문자 배열로 변환
3) 4가지 경우의 수가 있으니, switch문 사용

profile
나만의 무언가를 가진 프로그래머가 되자

0개의 댓글