-
프로그래머스 코딩테스트(간단한 식 계산하기, 숫자 찾기, 순서 바꾸기)코딩테스트 2023. 5. 10. 14:33
<간단한 식 계산하기>
문제 설명
문자열 binomial이 매개변수로 주어집니다. binomial은 "a op b" 형태의 이항식이고 a와 b는 음이 아닌 정수, op는 '+', '-', '*' 중 하나입니다. 주어진 식을 계산한 정수를 return 하는 solution 함수를 작성해 주세요.풀이
class Solution {
public int solution(String binomial) {
String[] arr = binomial.split(" ");
if(arr[1].equals("+")){
return Integer.parseInt(arr[0])+Integer.parseInt(arr[2]);
} else if(arr[1].equals("-")){
return Integer.parseInt(arr[0])-Integer.parseInt(arr[2]);
} else {
return Integer.parseInt(arr[0])*Integer.parseInt(arr[2]);
}
}
}<숫자 찾기>
문제 설명
정수 num과 k가 매개변수로 주어질 때, num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수를 return하고 없으면 -1을 return 하도록 solution 함수를 완성해보세요.풀이
class Solution {
public int solution(int num, int k) {
String str = num+"";
int answer = -1;
for(int i=0;i<str.length();i++){
if(str.charAt(i) == k+'0'){
return i+1;
}
}
return answer;
}
}다른 사람 풀이
class Solution { public int solution(int num, int k) { return ("-" + num).indexOf(String.valueOf(k)); } }
<순서 바꾸기>
문제 설명
정수 리스트 num_list와 정수 n이 주어질 때, num_list를 n 번째 원소 이후의 원소들과 n 번째까지의 원소들로 나눠 n 번째 원소 이후의 원소들을 n 번째까지의 원소들 앞에 붙인 리스트를 return하도록 solution 함수를 완성해주세요.풀이
class Solution {
public int[] solution(int[] num_list, int n) {
int[] answer = new int[num_list.length];
int i = 0;
for(int j=n;j<num_list.length;j++){
answer[i]=num_list[j];
i++;
}
for(int k=0;k<n;k++){
answer[i]=num_list[k];
i++;
}
return answer;
}
}다른 사람 풀이
class Solution { public int[] solution(int[] num_list, int n) { int idx = 0; int[] answer = new int[num_list.length]; for (int i = n;i < num_list.length;i++) answer[idx++] = num_list[i]; for (int i = 0;i < n;i++) answer[idx++] = num_list[i]; return answer; } }
'코딩테스트' 카테고리의 다른 글
프로그래머스 코딩테스트(주사위 게임 2, l로 만들기, 9로 나눈 나머지) (0) 2023.05.12 프로그래머스 코딩테스트(0 떼기, 합성수 찾기, 5명씩) (0) 2023.05.11 객체지향개념 II (0) 2023.05.09 프로그래머스 코딩테스트(문자열 섞기, 369게임, 약수 구하기) (0) 2023.05.09 프로그래머스 코딩테스트(공백으로 구분하기 2, 접미사 배열, 문자열 돌리기) (0) 2023.05.08