이 영역을 누르면 첫 페이지로 이동
포렌식 & 개발 이야기 - Forensics & Development 블로그의 첫 페이지로 이동

포렌식 & 개발 이야기 - Forensics & Development

페이지 맨 위로 올라가기

백준 17951 - 흩날리는 시험지 속에서 내 평점이 느껴진거야 (파이썬)

포렌식 & 개발 이야기 - Forensics & Development

백준 17951 - 흩날리는 시험지 속에서 내 평점이 느껴진거야 (파이썬)

  • 2025.03.09 20:36
  • Programming/백준
글 작성자: pental

https://www.acmicpc.net/problem/17951

풀이

이분 탐색을 활용해서 시험지 점수 리스트 A를 K개의 그룹으로 나눌 때, 각 그룹의 최소 점수 합 중 최대값을 찾는 문제이다.

문제를 이해하면,

  1. N개의 시험지 점수가 주어진다.
  2. 이 점수들은 연속된 그룹으로 K개 이상으로 나눠야한다.
  3. 그룹의 최소 점수 합이 최대한 커지도록 만든다.

일반적인 풀이로는 시간이 많이 걸리므로, 이분 탐색을 활용해 효율적으로 풀이한다.

  1. 이분 탐색 대상
    1. mid 값은 각 그룹의 최소 점수 합 중 최댓값을 의미한다.
    2. low = 0, high = 20 * 100000 / 시험지 개수 최대값이 10^5이므로, 가능한 최대 점수로 정의한다.
  2. 이분 탐색 과정
    1. mid 값을 기준으로 그룹을 나눈다.
    2. 그룹의 개수가 K이상이면, mid값을 더 크게 설정
    3. 그룹의 개수가 K미만이면, mid값을 더 작게 설정

코드

# # 백준 17951 - 흩날리는 시험지 속에서 내 평점이 느껴진거야
# 분류 : 이분 탐색
import sys
input = sys.stdin.readline
N, K = map(int, input().split())
A = list(map(int, input().split()))
low = 0
high = 20 * 100000
answer = -1
while low <= high :
mid = (low + high) // 2
sum = 0
count = 0
for i in range(N) :
sum += A[i]
if sum >= mid :
count += 1
sum = 0
if count >= K :
answer = mid
low = mid + 1
else :
high = mid - 1
print(answer)
이 글은 (새창열림) 본 저작자 표시, 비영리 규칙 하에 배포할 수 있습니다. 자세한 내용은 Creative Commons 라이선스를 확인하세요.
Creative Commons
본 저작자 표시
비영리

'Programming > 백준' 카테고리의 다른 글

백준 17255 - N으로 만들기 (파이썬)  (0) 2025.03.10
백준 13164 - 행복 유치원 (파이썬)  (0) 2025.03.10
백준 2503 - 숫자 야구 (파이썬)  (1) 2025.03.09
백준 17944 - 퐁당퐁당 1 (파이썬)  (0) 2025.03.08
백준 17952 - 과제는 끝나지 않아! (파이썬)  (0) 2025.03.07

댓글

댓글을 사용할 수 없습니다.

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • 백준 17255 - N으로 만들기 (파이썬)

    백준 17255 - N으로 만들기 (파이썬)

    2025.03.10
  • 백준 13164 - 행복 유치원 (파이썬)

    백준 13164 - 행복 유치원 (파이썬)

    2025.03.10
  • 백준 2503 - 숫자 야구 (파이썬)

    백준 2503 - 숫자 야구 (파이썬)

    2025.03.09
  • 백준 17944 - 퐁당퐁당 1 (파이썬)

    백준 17944 - 퐁당퐁당 1 (파이썬)

    2025.03.08
다른 글 더 둘러보기

정보

포렌식 & 개발 이야기 - Forensics & Development 블로그의 첫 페이지로 이동

포렌식 & 개발 이야기 - Forensics & Development

  • 포렌식 & 개발 이야기 - Forensics & Development의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록

카테고리

  • Category (452)
    • Forensics (105)
      • Magnet AXIOM (28)
      • Digital Forensics Informati.. (9)
      • Iphone Forensics (24)
      • DFC (7)
      • 디지털포렌식전문가2급 자격증 (10)
      • FTK ACE 자격증 (7)
    • 이것저것 (7)
      • Ubuntu (6)
      • 디스코드 봇 (4)
      • Volatility GUI (2)
    • CTF (32)
      • NEWSECU (14)
      • CTF-d (5)
      • Puzzel - Network Forensics (2)
      • Security Traps (2)
      • system32.kr (5)
      • HMCTF (4)
    • Programming (260)
      • C (10)
      • Python (11)
      • 백준 (206)
      • 프로그래머스 (32)
    • 그냥 개발 및 잡담 (16)
      • Docker (2)
      • Google Cloud (3)
      • OS 개발 (3)
    • Best of Best (20)

인기 글

공지사항

태그

  • axiom
  • 디지털포렌식
  • 프로그래머스
  • Forensics
  • 포렌식
  • pental
  • 백준
  • 파이썬
  • 전체 보기…

정보

pental의 포렌식 & 개발 이야기 - Forensics & Development

포렌식 & 개발 이야기 - Forensics & Development

pental

블로그 구독하기

  • 구독하기
  • RSS 피드

방문자

  • 전체 방문자
  • 오늘
  • 어제

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. Copyright © pental.

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.