문제 링크: https://www.hackerrank.com/challenges/beautiful-days-at-the-movies/problem?isFullScreen=true
Beautiful Days at the Movies | HackerRank
Find the number of beautiful days.
www.hackerrank.com
분류: Problem Solving (Basic)
🎬 문제 요약
당신은 i일부터 j일까지 영화를 봐.
영화가 "아름다운 날(Beautiful Day)" 이 되려면 다음 조건을 만족해야 해:
(일자 - 그 일자의 숫자를 뒤집은 값)을 k로 나눈 결과가 정수여야 함 (즉, 나누어떨어져야 함)
💡 핵심 포인트
- 주어진 범위 [i, j]를 순회
- 숫자 뒤집기 함수 reverse(n) 작성
- (n - reverse(n)) % k == 0인지 체크
- 만족하는 날만 카운트
public static int beautifulDays(int i, int j, int k) {
int answer = 0;
// check beautiful
for(int current = i; current <= j; current++){
if(isBeautiful(current, k)) answer++;
}
return answer;
}
private static boolean isBeautiful(int num,int k) {
Integer rev = reverseNumber(num);
return Math.abs(num-rev) % k == 0;
}
// 숫자 뒤집기
private static int reverseNumber(int n) {
int rev = 0;
while (n > 0) {
rev = rev * 10 + n % 10;
n /= 10;
}
return rev;
}
'스터디 > HackerRank 문제 풀이' 카테고리의 다른 글
[홀짝] Utopian Tree (0) | 2025.04.13 |
---|---|
[이진탐색 구현] Climbing the Leaderboard (0) | 2025.04.13 |