728x90
반응형
[프로그래머스] 코딩테스트 연습 -> 코딩테스트 입문 -> 가위 바위 보
https://school.programmers.co.kr/learn/courses/30/lessons/120839
해결 과정
먼저 rsp를 한 글자씩 나누어 String 배열 s에 넣어준다
그리고 반복문과 조건문을 사용하여
만약 s의 원소가 각각 0, 2, 5 와 같을 경우 그에 대비하여 이길 수 있는 경우인 5,0,2를 answer 문자열에 추가해준다.
같을 경우를 찾기 위해 배열.equals를 사용한다.
소스 코드
class Solution {
public String solution(String rsp) {
String answer = "";
String[] s = rsp.split("");
for (int i = 0; i<rsp.length(); i++) {
if (s[i].equals("0")) {
answer += "5";
} else if (s[i].equals("2")) {
answer += "0";
} else if (s[i].equals("5")) {
answer += "2";
}
}
return answer;
}
}
(또 다른 풀이)
class Solution {
public String solution(String rsp) {
String answer = "";
for (int i = 0; i<rsp.length(); i++) {
if (Integer.valueOf(rsp.charAt(i)) - 48 == 2) {
answer += "0";
}else if (Integer.valueOf(rsp.charAt(i)) - 48 == 5) {
answer += "2";
}else {
answer += "5";
}
}
return answer;
}
}
charAt(i)를 이용하여 Integer으로 형변환해주고 아스키코드이므로 -48을 통해 값을 맞춰준다
그리고 해당하는 값에 따라 answer에 문자를 추가해주면된다.
728x90
반응형
'JAVA > Programmers' 카테고리의 다른 글
JAVA 프로그래머스 [점의 위치 구하기] 자바 (0) | 2023.05.31 |
---|---|
JAVA 프로그래머스 [2차원으로 만들기] 자바 (0) | 2023.05.31 |
JAVA 프로그래머스 [구슬을 나누는 경우의 수] 자바 Lv.0 (0) | 2023.05.30 |
JAVA 프로그래머스 [개미 군단] 자바 Lv.0 (0) | 2023.05.30 |
JAVA 프로그래머스 [모스부호 (1)] 자바 (0) | 2023.05.30 |
댓글