
* 문제 풀이
class Solution {
public int solution(String my_string, String is_suffix) {
if (my_string.endsWith(is_suffix)){
return 1;
} else{
return 0;
}
}
}
지난 번에 접두사 문풀했을 때 봤던 기억이 있어서 검색해서 이 메서드를 사용함.
근~데~ 기억 안 날 것 같단 말이지
일단 외워두고 다른 방법도 공부해야겠다.
* 다른 풀이
class Solution {
public int solution(String my_string, String is_suffix) {
if(is_suffix.length() > my_string.length()) {
return 0;
}
for(int i = 0; i < is_suffix.length(); i++) {
if(my_string.charAt(my_string.length() - is_suffix.length() + i) != is_suffix.charAt(i)) {
return 0;
}
}
return 1;
}
}
if(is_suffix.length() > my_string.length())
먼저 길이를 비교해서, 접미사가 더 길면 무조건 false
for(int i = 0; i < is_suffix.length(); i++)
my_string의 뒷부분만 잘라서 하나씩 비교
if(my_string.charAt(my_string.length() - is_suffix.length() + i) != is_suffix.charAt(i))
접미사 위치 계산: my_string의 끝에서 is_suffix 길이만큼 떨어진 곳부터 비교
하나라도 다르면 접미사가 아님
모두 같으면 접미사 맞음
class Solution {
public int solution(String myString, String isSuffix) {
return myString.endsWith(isSuffix) ? 1 : 0;
}
}
class Solution {
public int solution(String my_string, String is_suffix) {
int answer = 0;
for(int i=0;i<my_string.length();i++){
if(is_suffix.equals(my_string.substring(i))){
answer = 1;
break;
}
}
return answer;
}
}
class Solution {
public int solution(String my_string, String is_suffix) {
if (!my_string.contains(is_suffix)){
return 0;
}
return my_string.lastIndexOf(is_suffix) == (my_string.length() - is_suffix.length()) ? 1 : 0;
}
}
'코테 > 프로그래머스 JAVA Lv.0' 카테고리의 다른 글
| [프로그래머스/java/Lv.0] 대소문자 바꿔서 출력하기 (0) | 2025.04.23 |
|---|---|
| [프로그래머스/java/Lv.0] 문자열 반복해서 출력하기 (0) | 2025.04.23 |
| [프로그래머스/java/Lv.0] 9로 나눈 나머지 (0) | 2025.04.22 |
| [프로그래머스/java/Lv.0] 순서 바꾸기 (0) | 2025.04.21 |
| [프로그래머스/java/Lv.0] x 사이의 개수 (0) | 2025.04.16 |
