문제 1:
간단한 식 계산하기
문제 설명:
문자열 binomial이 매개변수로 주어집니다. binomial은 "a op b" 형태의 이항식이고 a와 b는 음이 아닌 정수, op는 '+', '-', '*' 중 하나입니다. 주어진 식을 계산한 정수를 return 하는 solution 함수를 작성해 주세요.
제한사항
0 ≤ a, b ≤ 40,000
0을 제외하고 a, b는 0으로 시작하지 않습니다.
입출력 예시:
binomial result
"43 + 12" 55
"0 - 7777" -7777
"40000 * 40000" 1600000000
코드 :
class Solution {
public int solution(String binomial) {
int answer = 0;
String[] str = binomial.split(" ");
int num1 = Integer.parseInt(str[0]);
int num2 = Integer.parseInt(str[2]);
switch(str[1]){
case "+" -> answer = num1 + num2;
case "-" -> answer = num1 - num2;
case "*" -> answer = num1 * num2;
}
return answer;
}
}
문제 2:
배열 만들기 3
문제 설명
정수 배열 arr와 2개의 구간이 담긴 배열 intervals가 주어집니다.
intervals는 항상 [[a1, b1], [a2, b2]]의 꼴로 주어지며 각 구간은 닫힌 구간입니다. 닫힌 구간은 양 끝값과 그 사이의 값을 모두 포함하는 구간을 의미합니다.
이때 배열 arr의 첫 번째 구간에 해당하는 배열과 두 번째 구간에 해당하는 배열을 앞뒤로 붙여 새로운 배열을 만들어 return 하는 solution 함수를 완성해 주세요.
제한사항
1 ≤ arr의 길이 ≤ 100,000
1 ≤ arr의 원소 < 100
1 ≤ a1 ≤ b1 < arr의 길이
1 ≤ a2 ≤ b2 < arr의 길이
입출력 예
arr intervals result
[1, 2, 3, 4, 5] [[1, 3], [0, 4]] [2, 3, 4, 1, 2, 3, 4, 5]
코드 :
import java.util.*;
class Solution {
public int[] solution(int[] arr, int[][] intervals) {
int[] answer = {};
List<Integer> list = new ArrayList<>();
for(int i = 0; i < intervals.length; i++){
for(int j = 0; j < intervals[i].length; j++){
for(int k = intervals[i][j]; k <= intervals[i][j+1]; k++){
list.add(arr[k]);
}
break;
}
}
answer = list.stream().mapToInt(i -> i).toArray();
return answer;
}
}
문제 3:
9로 나눈 나머지
문제 설명
음이 아닌 정수를 9로 나눈 나머지는 그 정수의 각 자리 숫자의 합을 9로 나눈 나머지와 같은 것이 알려져 있습니다.
이 사실을 이용하여 음이 아닌 정수가 문자열 number로 주어질 때, 이 정수를 9로 나눈 나머지를 return 하는 solution 함수를 작성해 주세요.
제한사항
1 ≤ number의 길이 ≤ 100,000
number의 원소는 숫자로만 이루어져 있습니다.
number는 정수 0이 아니라면 숫자 '0'으로 시작하지 않습니다.
입출력 예
number result
"123" 6
"78720646226947352489" 2
코드 :
class Solution {
public int solution(String number) {
int answer = 0;
String[] str = number.split("");
int sum = 0;
for(String st : str){
sum += Integer.parseInt(st);
}
answer = sum % 9;
return answer;
}
}
'프로그래머스 문제' 카테고리의 다른 글
프로그래머스 문제 (Java) 10.11 (3) | 2024.10.11 |
---|---|
프로그래머스 (Java) 문제 10.10 (2) | 2024.10.10 |
프로그래머스 (SQL) 가장 큰 물고기 10마리 구하기 (0) | 2024.10.07 |
프로그래머스 디버깅 문제(Java) [PCCE 기출문제] 6번 / 물 부족 (1) | 2024.09.27 |
프로그래머스 문제 (Java) 추억 점수 (1) | 2024.09.26 |