반응형
문제
the-easiest-ever-coding-challenge-4 | Practice | GeeksforGeeks
문제 해결 방법
- Geekina는 문자열 내의 모든 문자가 ASCII 값에 따라 오름차순으로 정렬되어 있으면 해당 문자열을 좋아합니다.
- Geekina는 문자열 내의 문자 중 더 낮은 ASCII 값의 문자가 더 높은 ASCII 값의 문자 뒤에 나온다면 해당 문자열을 싫어합니다.
- 모든 문자가 ASCII 값에 따라 오름차순으로 정렬되어 있으면 1을 리턴합니다.
- 이전문자가 현재의 문자보다 ASCII값이 높으면 0을 리턴합니다.
- 모든 이전문자가 현재의 문자보다 ASCII값이 낮으면 1을 리턴합니다.
Github Link
https://github.com/eunhanlee/GFG_GeekinaLovesOrder_Solution.git
시간복잡도: O(n), 공간복잡도: O(1)
class Solution {
/**
* 문자열의 ASCII 값 순서를 기준으로 Geekina가 문자열을 좋아하는지 확인합니다.
*
* @param N 문자열의 길이입니다.
* @param S 입력 문자열입니다.
* @return 1은 Geekina가 문자열을 좋아하면, 0은 그렇지 않을 경우입니다.
*/
public static int validString(int N, String S) {
for (int i = 1; i < N; i++) {
if (S.charAt(i) < S.charAt(i - 1)) {
// 더 낮은 ASCII 값을 가진 문자가 더 높은 ASCII 값을
// 가진 문자 뒤에 나온다면 Geekina가 문자열을 싫어합니다
return 0;
}
}
return 1; // 모든 문자가 ASCII 값 순서대로 오름차순으로 정렬되어 있다면 Geekina가 문자열을 좋아합니다
}
}
반응형
'old > Algorithm Solving' 카테고리의 다른 글
Maximize The Number 문제의 자바 해결 방법: 효율적인 알고리즘 (0) | 2023.04.25 |
---|---|
Wave Array문제의 자바 해결 방법: 효율적인 알고리즘 (0) | 2023.04.24 |
Add Strings 문제풀이 (0) | 2021.09.11 |
Remove Duplicates from Sorted Array 문제풀이 (0) | 2021.09.11 |
Two Sum문제 풀이 (0) | 2021.09.09 |