Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 딥러닝 보코더
- TTS
- waveglow
- 한국어 음성 합성
- korean tts
- 타코트론
- you only look once
- Vocoder
- deep voice
- 윈도우
- YOLO
- 딥러닝
- singing voice synthesis
- melgan
- 노래합성
- 음성 합성
- 트레이닝
- 보코더
- 한국어 tts
- text-to-speech
- 딥러닝 음성 합성
- 학습
- tacotron
- DCTTS
Archives
- Today
- Total
chldkato
백준 1654 랜선 자르기 (파이썬) 본문
https://www.acmicpc.net/problem/1654
1. 이분탐색을 위해 left를 0, right를 입력받은 랜선 길이의 최대값으로 설정한다
2. 만일 mid가 0이면 (left가 0, right가 1일 때) 길이 1로 자르는 경우밖에 없으므로 답을 1로 저장하고 break한다
3. 각 랜선을 mid로 나눴을 때의 몫이 mid 길이로 자를 때 얻을 수 있는 랜선의 개수가 된다
개수가 n보다 크거나 같으면 ans를 갱신한다
import sys
input = sys.stdin.readline
def f(mid):
cnt = 0
for i in range(len(a)):
cnt += a[i] // mid
return cnt
k, n = map(int, input().split())
a = []
for _ in range(k):
a.append(int(input()))
left, right, ans = 0, max(a), 0
while left <= right:
mid = (left + right) // 2
if mid == 0:
ans = 1
break
cnt = f(mid)
if cnt >= n:
ans = max(ans, mid)
left = mid + 1
else:
right = mid - 1
print(ans)
'백준' 카테고리의 다른 글
백준 19235 모노미노도미노 (파이썬) (0) | 2020.06.11 |
---|---|
백준 19236 청소년 상어 (파이썬) (0) | 2020.06.08 |
백준 10448 유레카 이론 (파이썬) (0) | 2020.06.05 |
백준 1748 수 이어 쓰기 1 (파이썬) (0) | 2020.06.05 |
백준 1107 리모컨 (파이썬) (2) | 2020.06.04 |
Comments