코딩테스트

[programmers] JAVA_0단계 수 조작하기 2

congs 2024. 6. 19. 23:40

수 조작하기 2

 

풀이

- Map에 넣어서 만드는 방법

import java.util.HashMap;
import java.util.Map;

class Solution {
    public String solution(int[] numLog) {
        
        String answer = "";
        
        // Map에 묶어 넣기
        Map<Integer, String> map = new HashMap<>();
        map.put(1, 'w');
        map.put(-1, 's');
        map.put(10, 'd');
        map.put(-10, 'a');

        // 숫자로 문자를 찾아 answer 만들기
        for (int i = 1; i < numLog.length; i++) {
            int word = numLog[i] - numLog[i - 1];
            answer += map.get(word);
        }

        return answer;
    }
}

 

-  for문과 switch문을 이용한 방법

class Solution {
    public String solution(int[] numLog) {
        String answer = "";
        
        for(int i=1; i<numLog.length; i++){
            int j = numLog[i-1] - numLog[i];
            switch(j){
                case -1 : answer += 'w'; break;
                case 1 : answer += 's'; break;
                case -10 : answer += 'd'; break;
                case 10 : answer += 'a'; break;
            }
        }
        return answer;
    }
}