수조작하기1 JAVA
출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges
문제 : 정수 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 함수를 완성해 주세요.
해결 코드 :
class Solution {
public int solution(int n, String control) {
int answer = n;
for(int i=0; i<control.length(); i++){
if( control.charAt(i) == 'w' ){
answer = answer + 1;
//System.out.println("w : "+answer);
}else if( control.charAt(i) == 's') {
answer = answer - 1;
//System.out.println("s : "+answer);
}else if( control.charAt(i) == 'd' ) {
answer = answer + 10;
//System.out.println("d : "+answer);
}else if( control.charAt(i) == 'a' ){
answer = answer - 10;
//System.out.println("a : "+answer);
}else {
return answer;
}
}
return answer;
}
}
처음에 equals() 메소드를 사용하면 되겠다고 생각했는데, 전혀 아니었음.
728x90
300x250