• TOC {:toc}

이 글은 백준 온라인 저지의 10886번 문제를 파이썬(Python)으로 풀이한 것을 모아놓은 글입니다.

일종의 연습 기록이며 제가 정답을 받은 코드와 참고할만한 다른 코드를 같이 기록합니다. 필요한 경우 코드에 대한 해설을 기록합니다만 코드는 통과했어도 해설은 틀릴 수 있기 때문에 가볍게 참고해주시길 부탁드립니다. 피드백은 편하신 방법으로 자유롭게 주시면 감사하겠습니다.

2021.03.26

메모리 시간 코드 길이
28776 KB 72 ms 183 B
N = int(input())
c = 0

for _ in range(N):
    if int(input()):
        c += 1
    else:
        c -= 1

if c > 0:
    print("Junhee is cute!")
else:
    print("Junhee is not cute!")

참고 답안

n = int(input())

s = 0
for i in range(n):
    s += int(input())

if s * 2 > n:
    print("Junhee is cute!")
else:
    print("Junhee is not cute!")

아이디어 & 풀이

입력받은 값 (0, 1)에 따라 케이스를 나누지 않고 입력값 자체를 이용한다.

  • 입력받은 값을 더해나가면 최종값이 귀엽다고 투표 받은 수이다.
  • 그러므로 최종값이 투표한 사람 수의 과반이면 (s * 2 > n) 귀엽다, 아니면 귀엽지 않다를 출력하면 된다.