DOJ logoDOJ
문제
최근 추가된 문제들저장한 문제
카테고리DLC대회그룹팀게시판
랭킹
문제 풀이 랭킹스트릭 랭킹DOJ Power 랭킹
현황
문제 제안로그인회원가입
DOJ logoDOJ

OI 서브태스크 채점, Elo 레이팅, Discord 인증을 갖춘 커뮤니티 온라인 저지.

문제
문제 목록카테고리
커뮤니티
대회랭킹게시판공지사항외부 대회 개최이용 안내
계정
로그인회원가입채점 현황
정책
이용약관DLC 이용 규칙개인정보 처리방침API 사용 설명서언어별 채점 환경대회 순위 보상레이팅과 퍼포먼스
© 2026 DOJ
모든 권리 보유
해설

이븐한 고기 굽기

문제로 돌아가기

해설

N=1N=1N=1이면 왼쪽에서 화력 111로 한 번 가열한다.

N≥2N \geq 2N≥2이면 왼쪽과 오른쪽에서 각각 화력 N−1N-1N−1로 한 번씩 가열한다. 왼쪽에서 iii번째 고기는 첫 작업으로 N−iN-iN−i만큼, 두 번째 작업으로 i−1i-1i−1만큼 증가하므로, 최종 굽기 정도는 모두 N−1N-1N−1이 된다.

따라서 N=1N=1N=1이면 작업 횟수 111과 작업 (1,1)(1,1)(1,1)을 출력한다. 그 외에는 작업 횟수 222와 작업 (1,N−1)(1,N-1)(, 을 출력한다. 한 테스트 케이스의 시간 복잡도와 공간 복잡도는 모두 이다.

증명

작업을 한 번도 하지 않으면 모든 고기의 굽기 정도가 000이다. 최종 굽기 정도는 양수여야 하므로, 항상 한 번 이상의 작업이 필요하다.

N=1N=1N=1이면 화력 111인 작업 한 번으로 유일한 고기의 굽기 정도를 111로 만들 수 있다. 따라서 최소 작업 횟수는 111이다.

이제 라고 하자. 작업을 한 번만 수행하면, 선택한 쪽의 첫 번째 고기와 두 번째 고기의 굽기 정도는 각각 와 이 된다. 이므로 두 값은 서로 다르다. 따라서 한 번의 작업으로 모든 고기의 굽기 정도를 같게 만들 수 없으며, 최소 두 번의 작업이 필요하다.

서브태스크 1에서는 항상 N=1N=1N=1이므로 작업 (1,1)(1,1)(1,1) 하나를 출력하면 된다. 시간 복잡도와 공간 복잡도는 모두 O(1)O(1)O(1)이다.

서브태스크 2에서는 완전 탐색도 가능하다. 각 작업의 방향과 111 이상 NN 이하의 화력을 모두 시도하되, 작업 한 개로 이루어진 후보들을 먼저 확인하고, 없으면 작업 두 개로 이루어진 후보들을 확인한다. 각 후보에 대해 모든 고기의 최종 굽기 정도를 하나씩 계산하여 첫 고기의 값과 같은 양수인지 검사한다. 위에서 제시한 최적해의 화력은 항상 이하이고 작업 횟수는 두 번 이하이므로, 이 탐색 범위 안에 최적해가 존재한다. 시간 복잡도는 이고 공간 복잡도는 이다.

1
,
N
−
1)
(2,N−1)(2,N-1)(2,N−1)
O(1)O(1)O(1)
N≥2N \geq 2
N≥2
PPP
max⁡(0,P−1)\max(0,P-1)max(0,P−1)
P≥1P \geq 1P≥1

왼쪽에서 화력 N−1N-1N−1로 가열하면 iii번째 고기의 굽기 정도는 max⁡(0,N−i)=N−i\max(0,N-i)=N-imax(0,N−i)=N−i만큼 증가한다. 오른쪽에서 같은 화력으로 가열하면 이 고기는 오른쪽에서 N−i+1N-i+1N−i+1번째이므로 max⁡(0,i−1)=i−1\max(0,i-1)=i-1max(0,i−1)=i−1만큼 증가한다. 두 작업을 마친 뒤의 굽기 정도는 (N−i)+(i−1)=N−1(N-i)+(i-1)=N-1(N−i)+(i−1)=N−1이다.

이는 위치와 무관하고 N≥2N \geq 2N≥2이므로 양수이다. 또한 화력 N−1N-1N−1은 허용 범위 안에 있다. 두 번의 작업으로 조건을 만족하며 최소 두 번이 필요하므로, 이 구성이 최적이다.

N
NNN
O(N3)O(N^3)O(N3)
O(1)O(1)O(1)

전체 조건에서는 위의 직접 구성을 사용한다.

Solution written by GPT6