아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

표 형식 맞추기

시간 제한5초메모리 제한64 MB

요약
3x3 표의 셀마다 글자 길이가 주어지고, 전체 너비 w를 세 열의 너비로 나눌 때 행 높이의 합이 최소가 되는 열 너비를 구합니다.
난이도

어려움10점 중 8점

유형
완전 탐색, 수학, 이분 탐색
정답자
아직 제출이 없습니다

문제

어린 바딤은 학교에서 숙제를 받았다. 그는 유명한 문학 작품의 등장인물을 설명해야 한다. 바딤은 숙제를 잘 마치고, 좋아하는 텍스트 편집기에서 스프레드시트 형태로 보고서를 작성했다.

스프레드시트는 3×33 \times 3 크기의 표이다. ii번째 행과 jj번째 열이 만나는 칸에는 길이가 aija_{ij}인 텍스트가 들어 있다. 표의 전체 너비는 ww 글자이다. 편집기에서는 각 열의 너비를 자유롭게 바꿀 수 있다. 열의 너비를 xx, yy, zz라 하면 x+y+z=wx+y+z=w이다. ii번째 행의 높이는 hi=max⁡(⌈ai1/x⌉,⌈ai2/y⌉,⌈ai3/z⌉)h_i = \max \left( \lceil a_{i1} / x \rceil, \lceil a_{i2} / y \rceil, \lceil a_{i3} / z \rceil \right)이고, 표 전체 높이는 h=h1+h2+h3h = h_1 + h_2 + h_3이다.

바딤은 열 너비를 바꾸면 표 전체 높이가 예측하기 어렵게 변한다는 것을 알아챘다. 그는 완벽주의자라서 표 전체 높이가 최소가 되기를 원한다. 바딤이 최적의 해를 찾도록 도와라.

입력

첫째 줄에 정수 ww (3≤w≤1093 \le w \le 10^9)가 주어진다.

다음 세 줄에는 각각 정수 세 개가 주어진다. 이 중 ii번째 줄의 jj번째 수는 aija_{ij} (1≤aij≤10121 \le a_{ij} \le 10^{12})이다.

출력

첫째 줄에 표 전체 높이의 최솟값 hh를 출력한다.

둘째 줄에는 최적의 해를 이루는 열 너비 xx, yy, zz를 출력한다.

답이 여러 개라면 그중 아무거나 출력한다.

힌트

아래 표는 첫 번째 예제의 데이터와 대응한다.

lawfu``lgoodneutra``lgoodchaoti``cgood
lawfu``lneut``ralneutra``lchaoti``cneutr``al
lawfu``levilneutra``levilchaoti``cevil

예제1

  1. 예제 1

    입력
    17
    10 11 11
    13 7 14
    10 11 11
    
    예상 출력
    7
    5 6 6