728x90
반응형
가위는 2 바위는 0 보는 5로 표현합니다. 가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때, rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return하도록 solution 함수를 완성해보세요.
제한사항
0 < rsp의 길이 ≤ 100
rsp와 길이가 같은 문자열을 return 합니다.
rsp는 숫자 0, 2, 5로 이루어져 있습니다.
입출력 예
rsp result
"2" "0"
"205" "052"
입출력 예 설명
입출력 예 #1
"2"는 가위이므로 바위를 나타내는 "0"을 return 합니다.
입출력 예 #2
"205"는 순서대로 가위, 바위, 보이고 이를 모두 이기려면 바위, 보, 가위를 순서대로 내야하므로 “052”를 return합니다.
내 풀이
[Java]
class Solution {
public String solution(String rsp) {
String answer = "";
for(int i = 0; i < rsp.length(); i++){
int n = Integer.parseInt(rsp.substring(i, i + 1));
int r = 0;
switch(n){
case 0:
r = 5;
break;
case 2:
r = 0;
break;
case 5:
r = 2;
break;
}
answer += String.valueOf(r);
}
return answer;
}
}
[C]
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
// 파라미터로 주어지는 문자열은 const로 주어집니다. 변경하려면 문자열을 복사해서 사용하세요.
char* solution(const char* rsp) {
// return 값은 malloc 등 동적 할당을 사용해주세요. 할당 길이는 상황에 맞게 변경해주세요.
char* answer = (char*)malloc(sizeof(char)* strlen(rsp));
int i = 0;
for(i = 0; i < strlen(rsp); i++){
if(rsp[i] == '0') answer[i] = '5';
if(rsp[i] == '2') answer[i] = '0';
if(rsp[i] == '5') answer[i] = '2';
}
answer[i] = '\0';
return answer;
}
[Python]
def solution(rsp):
answer = ''
for i in rsp:
if i == '0':
answer += '5'
elif i == '2':
answer += '0'
elif i == '5':
answer += '2'
return answer
https://school.programmers.co.kr/learn/courses/30/lessons/120839
728x90
반응형
'코딩테스트 > 프로그래머스 입문' 카테고리의 다른 글
[코딩테스트 Lv.0] 점의 위치 구하기 (0) | 2024.01.17 |
---|---|
[코딩테스트 Lv.0] 구슬을 나누는 경우의 수 (0) | 2024.01.16 |
[코딩테스트 Lv.0] 모스부호 (1) (0) | 2024.01.10 |
[코딩테스트 Lv.0] 개미 군단 (0) | 2024.01.09 |
[코딩테스트 Lv.0] 순서쌍의 개수 (0) | 2024.01.09 |