문제
정답
list
class Solution {
public String solution(String rsp) {
StringBuilder answer = new StringBuilder(); // 결과를 저장할 StringBuilder
// rsp 문자열을 toCharArray() 메서드를 통해 문자 배열로 변환해서 하나씩 돌아
for (char ch : rsp.toCharArray()) {
if (ch == '2') {
answer.append('0');
} else if (ch == '0') {
answer.append('5');
} else if (ch == '5') {
answer.append('2');
}
}
// StringBuilder를 문자열로 변환하여 반환
return answer.toString();
}
}
다른 사람들이 작성한 정답
streamAPI
import java.util.Arrays;
import java.util.stream.Collectors;
class Solution {
public String solution(String rsp) {
return Arrays.stream(rsp.split(""))
.map(s -> s.equals("2") ? "0" : s.equals("0") ? "5" : "2")
.collect(Collectors.joining());
}
}
map
import java.util.HashMap;
import java.util.Map;
class Solution {
public String solution(String rsp) {
//2 - 가위, 0 - 바위, 5 - 보
Map<String, String> winNumbers = new HashMap<>();
winNumbers.put("2", "0");
winNumbers.put("0", "5");
winNumbers.put("5", "2");
StringBuilder answer = new StringBuilder();
for (int i = 0; i < rsp.length(); i++) {
answer.append(winNumbers.get(rsp.substring(i, i+1)));
}
return answer.toString();
}
}
Share article