백준 16497 자바 - 대출 요청 (BOJ 16497 JAVA)
문제 : https://www.acmicpc.net/problem/16497 코드 : https://github.com/NaHwaSa/BOJ_BaekjunOnlineJudge/blob/master/16400/BOJ_16497.java 이 문제의 경우, 31일까지 모든 날짜에 대해 현재 대출되어 있는 책의 수를 세보면 간단히 풀 수 있다. 이 때 주의점은 (3, 6)이라면 3일에 빌려서 6일 0시에 딱 반납된다고 생각하면 된다. 즉, (3, 6)과 (6, 8)이 있다면 k=1 일때도 처리할 수 있다는 의미이다. 따라서 (3, 6)이라면 3일에 빌려서 5일까지만 가지고 있다고 생각하면 된다. 그럼 문제에 나온 기본 예시 (1, 2), (3, 6), (5, 8)은 다음과 같이 나타낼 수 있다. 이와 같이 모든..
2021. 10. 19.
백준 15779 자바 - ZigZag (BOJ 15779 JAVA)
https://www.acmicpc.net/problem/15779 i번째 데이터에 대해, i-2, i-1, i 번째 데이터를 살펴보며 단조증가 수열이거나 단조감소 수열일 경우 arr[i] = 0을 기입했고, 지그재그 수열일 경우 1을 기입함.(13line) 그럼 예를들어서 문제에 제시된 2번째 예시 (1,3,4,2,5)의 경우 제가 짠 로직으로는 arr = [0, 0, 0, 1, 1] 와 같이 기입됨. 근데 이 때 1이 연속된 갯수가 결국 지그재그 수열의 길이이므로, 13line처럼 이전값+1을 해주면 연속된 길이도 한꺼번에 구할 수 있음. 최종적으로 arr 배열에 있는 가장 큰 수가 가장 긴 지그재그 수열의 길이이므로 max값을 찾아주고 (19line) 거기에 2를 더해준게 답임. (+2를 해준 것은..
2021. 10. 8.