프로그래머스 Day 22 함수(메서드), 조건문 활용
0 떼기
💫문제 설명💫
정수로 이루어진 문자열 n_str이 주어질 때,
n_str의 가장 왼쪽에 처음으로 등장하는 0들을 뗀 문자열을 return하도록 solution 함수를 완성해주세요.
💫제한사항💫
2 ≤ n_str ≤ 10
n_str이 "0"으로만 이루어진 경우는 없습니다.
💫입출력 ex💫
n_str | result |
---|---|
“0010” | “10” |
“854020” | “854020” |
문제풀이
class Solution {
public String solution(String n_str) {
int str = Integer.parseInt(n_str);
String answer = str + "";
return answer;
}
}
두 수의 합
💫문제 설명💫
0 이상의 두 정수가 문자열 a, b로 주어질 때,
a + b의 값을 문자열로 return 하는 solution 함수를 작성해 주세요.
💫제한사항💫
1 ≤ a의 길이 ≤ 100,000
1 ≤ b의 길이 ≤ 100,000
a와 b는 숫자로만 이루어져 있습니다.
a와 b는 정수 0이 아니라면 0으로 시작하지 않습니다.
💫입출력 ex💫
a | b | result |
---|---|---|
“582” | “734” | “1316” |
“18446744073709551615” | “287346502836570928366” | “305793246910280479981” |
“0” | “0” | “0” |
문제풀이
// BigInteger 정수의 크기에 제한이 없는 클래스
import java.math.BigInteger;
class Solution {
public String solution(String a, String b) {
BigInteger numA = new BigInteger(a);
BigInteger numB = new BigInteger(b);
return numA.add(numB).toString();
}
}
문자열로 변환
💫문제 설명💫
정수 n이 주어질 때, n을 문자열로 변환하여 return하도록 solution 함수를 완성해주세요.
💫제한사항💫
1 ≤ n ≤ 10000
💫입출력 ex💫
n | result |
---|---|
123 | “123” |
2573 | “2573” |
문제풀이
class Solution {
public String solution(int n) {
String answer = n+"";
return answer;
}
}
배열의 원소 삭제하기
💫문제 설명💫
정수 배열 arr과 delete_list가 있습니다.
arr의 원소 중 delete_list의 원소를 모두 삭제하고 남은 원소들은 기존의 arr에 있던 순서를 유지한 배열을 return 하는 solution 함수를 작성해 주세요.
💫제한사항💫
1 ≤ arr의 길이 ≤ 100
1 ≤ arr의 원소 ≤ 1,000
arr의 원소는 모두 서로 다릅니다.
1 ≤ delete_list의 길이 ≤ 100
1 ≤ delete_list의 원소 ≤ 1,000
delete_list의 원소는 모두 서로 다릅니다.
💫입출력 ex💫
arr | delete_list | result |
---|---|---|
[293, 1000, 395, 678, 94] | [94, 777, 104, 1000, 1, 12] | [293, 395, 678] |
[110, 66, 439, 785, 1] | [377, 823, 119, 43] | [110, 66, 439, 785, 1] |
문제풀이
import java.util.*;
class Solution {
public int[] solution(int[] arr, int[] delete_list) {
ArrayList<Integer> answer = new ArrayList<>();
for (int list : delete_list) {
answer.add(list);
}
return Arrays.stream(arr)
.filter(list -> !answer.contains(list))
.toArray();
}
}
부분 문자열인지 확인하기
💫문제 설명💫
부분 문자열이란 문자열에서 연속된 일부분에 해당하는 문자열을 의미합니다.
예를 들어, 문자열 "ana", "ban", "anana", "banana", "n"는 모두 문자열 "banana"의 부분 문자열이지만,
"aaa", "bnana", "wxyz"는 모두 "banana"의 부분 문자열이 아닙니다.
문자열 my_string과 target이 매개변수로 주어질 때,
target이 문자열 my_string의 부분 문자열이라면 1을, 아니라면 0을 return 하는 solution 함수를 작성해 주세요.
💫제한사항💫
1 ≤ my_string의 길이 ≤ 100
my_string은 영소문자로만 이루어져 있습니다.
1 ≤ target의 길이 ≤ 100
target은 영소문자로만 이루어져 있습니다.
💫입출력 ex💫
my_string | target | result |
---|---|---|
“banana” | “ana” | 1 |
“banana” | “wxyz” | 0 |
문제풀이
class Solution {
public int solution(String my_string, String target) {
int answer = 0;
answer = my_string.contains(target) ? 1 : 0;
return answer;
}
}
Leave a comment