728x90
Baekjoon 21921. 블로그
[파이썬(python) 풀이]
찬솔이는 블로그를 시작한 지 벌써 $N$일이 지났다.
요즘 바빠서 관리를 못 했다가 방문 기록을 봤더니 벌써 누적 방문 수가 6만을 넘었다.
찬솔이는 $X$일 동안 가장 많이 들어온 방문자 수와 그 기간들을 알고 싶다.
찬솔이를 대신해서 $X$일 동안 가장 많이 들어온 방문자 수와 기간이 몇 개 있는지 구해주자.
입력
첫째 줄에 블로그를 시작하고 지난 일수 $N$와 $X$가 공백으로 구분되어 주어진다.
둘째 줄에는 블로그 시작 $1$일차부터 $N$일차까지 하루 방문자 수가 공백으로 구분되어 주어진다.
출력
첫째 줄에 $X$일 동안 가장 많이 들어온 방문자 수를 출력한다. 만약 최대 방문자 수가 0명이라면 SAD를 출력한다.
만약 최대 방문자 수가 0명이 아닌 경우 둘째 줄에 기간이 몇 개 있는지 출력한다.
입력 예시
5 2
1 4 2 5 1
출력 예시
7
1
❧ 정답
_sum
: 구간합을 저장한다._max
: 구간합의 최대값을 저장한다.cnt
: 동일한 방문자 수가 몇 번 등장했는 지 센다.
[Line 7 - 14]
👉 인덱스를 하나씩 움직이며 해당 구간의 합을 구하며 _max
와 비교한다.
👉 만약 새로운 구간합 _sum
이 _max
보다 크다면 _max
값을 갱신하고 cnt
를 1로 설정한다.
👉 혹은 새로운 구간합 _sum
이 _max
와 같다면 동일한 방문자 수가 등장한 날이므로 cnt
의 값을 '1'올려준다.
[Line 16]
👉 _sum == 0
: 계속해서 방문자 수가 0인 경우 이므로 'SAD'를 출력한다.
💡 파이썬에서의 삼항 연산자
[if문 실행문] if [조건문] else [else문 실행문]
728x90
'📊 Algorithm > Algorithm PS' 카테고리의 다른 글
[알고리즘 일기 - 파이썬] 180. IF문 좀 대신 써줘 (0) | 2022.02.11 |
---|---|
[알고리즘 일기 - 파이썬] 179. 파일 정리 (0) | 2022.02.11 |
[알고리즘 일기 - 파이썬] 177. 두 용액 (0) | 2022.02.11 |
[알고리즘 일기 - 파이썬] 176. 바이러스 (0) | 2022.02.11 |
[알고리즘 일기 - 파이썬] 175. 부분합 (0) | 2022.02.11 |