🎁 문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/181906
🎁 문제 설명
어떤 문자열에 대해서 접두사는 특정 인덱스까지의 문자열을 의미합니다. 예를 들어, "banana"의 모든 접두사는 "b", "ba", "ban", "bana", "banan", "banana"입니다. 문자열 my_string과 is_prefix가 주어질 때, is_prefix가 my_string의 접두사라면 1을, 아니면 0을 return 하는 solution 함수를 작성해 주세요.
🎁 입출력 예시
my_string | is_prefix | result |
"banana" | "ban" | 1 |
"banana" | "nan" | 0 |
"banana" | "abcd" | 0 |
"banana" | "bananan" | 0 |
🎁 코드(1)
class Solution {
public int solution(String my_string, String is_prefix) {
int answer = 0;
if(my_string.startsWith(is_prefix)){
answer = 1;
} else {
answer = 0;
}
return answer;
}
}
※ startsWith() ※
- 대상 문자열이 특정 문자 또는 문자열로 시작하는지 체크하는 함수
- boolean에 맞춰 true/false 값을 리턴 공백도 취급한다
🎁 코드(2)
class Solution {
public int solution(String my_string, String is_prefix) {
int answer = 0;
if(my_string.length() < is_prefix.length()) {
return 0;
} else if(my_string.substring(0, is_prefix.length()).equals(is_prefix)){
return 1;
} else {
return 0;
}
}
}
🎁 코드(3)
class Solution {
public int solution(String my_string, String is_prefix) {
int answer = 0;
int k = 1;
String[] arr = new String[my_string.length()];
// 각 인덱스에 문자를 하나씩 늘려가면서 담는다
for (int i = 0; i < my_string.length(); i++) {
arr[i] = my_string.substring(0, k);
k++;
}
for (int i = 0; i < arr.length; i++) {
if (arr[i].equals(is_prefix)) {
answer = 1;
}
}
return answer;
}
}
반응형
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Java :: 저주의 숫자 3 (0) | 2023.09.04 |
---|---|
[프로그래머스] Java :: 배열 평균 구하기 (0) | 2023.09.03 |
프로그래머스 [Java] :: 아이스 아메리카노 (0) | 2023.09.01 |
댓글