728x90
https://www.acmicpc.net/problem/23351
23351번: 물 주기
첫째 줄에 자연수 $N$, $K$, $A$, $B$가 공백을 사이에 두고 주어진다. ($2 \le N \le 100$, $1 \le K \le 100$, $1 \le A \times B < N$, $A$는 $N$의 약수)
www.acmicpc.net
접근법
- 물을 준 화분도 수분이 감소함 (처음이 이걸 이해 못해서 시간이 오래 걸렸다 ㅠ)
- 모든 캣닢이 살아있는 기간이 최대한 길어저야 하기 때문에 문제에 제공된 하루 일과 수행 후 sort를 수행하였다.
def solution(N, K, A, B):
arr = [K] * N
day = 0
while 0 not in arr:
for i in range(A):
arr[i] += B
for i in range(N): # 물을 준 화분도 수분이 감소함
arr[i] -= 1
arr.sort() # 모든 캣닢이 살아있는 기간이 최대한 길어저야 하기 때문에 sort
day += 1
return day
def main():
N, K, A, B = map(int, input().split())
ans = solution(N, K, A, B)
print(ans)
if __name__ == "__main__":
main()
사용된 알고리즘
구현 그리디 알고리즘
728x90
'study > 백준(BOJ)' 카테고리의 다른 글
[Python] 7795. 먹을 것인가 먹힐 것인가 (0) | 2023.04.27 |
---|---|
[Python] 27211. 도넛 행성 (0) | 2023.04.25 |
[Python] 27922. 현대모비스 입사 프로젝트 (0) | 2023.04.19 |
[Python] 2470. 두 용액 (0) | 2023.04.19 |
[Python] 1072. 게임 (0) | 2023.04.19 |