4/6 스터디 문제
1번 문제.
https://www.acmicpc.net/problem/1417
-> 국회의원 선거
1-1번 문제 풀이 코드
import sys
# 후보자수 등록
n = int(sys.stdin.readline())
# 후보자별 득표수 입력
votes = []
# 매수할 인간수
count = 0
# 후보자가 다솜 혼자면 당연히 당선되므로
if n <= 1:
print(0)
else:
# 나머지 후보자들의 득표수
for _ in range(n):
votes.append(int(sys.stdin.readline().strip()))
dasom = votes[0]
while dasom <= max(votes):
# 다솜이 아닌 최대득표수를 가지는 후보자의 인덱스 값을 확인
max_others = votes.index(max(votes))
# 그 인덱스의 후보자의 투표자를 한명씩 매수
votes[max_others] -= 1
dasom += 1
count += 1
print(count)
=======================================================
모든 예제 답은 나오는데, 틀렸다.
하지만,
3
99
1
1
을 입력하면 0이 나와야 하는데 1이 나와버린다.
즉, 다솜이도 max(votes)에 들어갈 수 있다는 이야기!
1-2번 문제 풀이 코드
import sys
# 후보자수 등록
n = int(sys.stdin.readline())
# 후보자별 득표수 입력
votes = []
# 매수할 인간수
count = 0
# 후보자가 다솜 혼자면 당연히 당선되므로
if n <= 1:
print(0)
else:
# 나머지 후보자들의 득표수
for _ in range(n):
votes.append(int(sys.stdin.readline().strip()))
dasom = votes[0]
while dasom <= max(votes):
# 다솜이 아닌 최대득표수를 가지는 후보자의 인덱스 값을 확인
# 다솜이를 제외하고 그 수에서 최대값을 구해야한다.
max_others = votes.index(max(votes[1:]))
# 그 인덱스의 후보자의 투표자를 한명씩 매수
votes[max_others] -= 1
dasom += 1
count += 1
print(count)
=======================================================
오늘은 여기까지
Author And Source
이 문제에 관하여(4/6 스터디 문제), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hey_junie/46-스터디-문제저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)