이세계개발자의 개발일지

  • 홈
  • 태그
  • 방명록

16401 1

(매일 BOJ) C++ 16401번 과자 나눠주기

이번 문제는 16401번 과자 나눠주기 문제이다.접근법어떤 길이 L로 자를 경우, 각 과자로 만들 수 있는 조각 수는 과자 길이 / L이다.모든 과자에 대해 이 값을 합산한 결과가 M 이상이면 해당 길이로 나눠주는 것이 가능하다.이분 탐색을 통해 가능한 최대 길이 L을 찾는다.알고리즘 설계입력된 과자 길이를 배열에 저장한다.탐색 범위는 start = 1부터 end = max(과자 길이)까지로 설정한다.이진 탐색을 수행하며, mid를 현재 시도하는 과자 길이로 간주한다.각 과자마다 길이 / mid를 계산하여 총 몇 개의 조각을 만들 수 있는지 확인한다.총 조각 수가 M 이상이면 길이를 더 늘려볼 수 있으므로 start = mid + 1, 답을 갱신한다.그렇지 않다면 end = mid - 1로 범위를 줄인다..

매일 BOJ 2025.07.27
이전
1
다음
더보기
프로필사진

이세계개발자의 개발일지

매일 BOJ 한문제씩 풀기!

  • 분류 전체보기 (109)
    • 매일 BOJ (96)
    • 프로젝트 활동 (0)
    • 백엔드 개발 (0)
    • 프론트 개발 (0)
    • 시험공부 (13)

Tag

집합과 맵, 백준, 깊이 우선 탐색, 최단 경로, 너비 우선 탐색, introduction to programming(2), dfs, 매개변수 탐색, C++, 그래프 탐색, 시간복잡도, 스택, 바이너리서치, 정렬, BFS, 과기대, 그래프 이론, 자료구조, 이분탐색, 25-2,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2026/01   »
일 월 화 수 목 금 토
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

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • solved.ac
  • BOJ
  • github

티스토리툴바