초고층 빌딩 MinatoHarukas
면접 대비시간 제한2초메모리 제한512 MB
각 예산 b에 대해 합이 b가 되는 가장 긴 연속한 양의 정수 구간을 찾아 시작 층과 층 수를 출력한다.
문제
Port 씨는 10억 개의 층을 가진 새 초고층 빌딩 MinatoHarukas의 한 층 이상을 임대하는 사업을 시작하려 한다. 그는 수직으로 인접한 창문에 광고를 최대한 많이 걸고 싶으므로, 수직으로 인접한 층을 가능한 많이 임대하려 한다. 한 층의 임대료는 층 번호에 비례한다. 즉, n층의 월 임대료는 1층 임대료의 n배이다. 여기서 1층은 미국식으로 지상층을 뜻하며, 지하층은 임대 대상이 아니다. Port 씨를 도와 수직으로 인접한 층들 중 월 임대료의 합이 그의 예산과 정확히 같아야 한다는 조건을 만족하는 층 구간을 계산하는 프로그램을 작성하시오.
예를 들어 예산이 1층 임대료를 1단위로 할 때 15단위라면, 가능한 임대 계획은 1+2+3+4+5, 4+5+6, 7+8, 15로 네 가지이다. 모두 합이 15이다. 이 예에서 임대 층 수가 최대인 계획은 1+2+3+4+5, 즉 1층부터 5층까지의 임대이다.
입력
입력은 여러 데이터셋으로 이루어지며, 각 데이터셋은 다음 형식이다.
b
데이터셋은 한 줄로 이루어지고, 1층 임대료의 배수로 나타낸 Port 씨의 예산 b가 주어진다. b는 1 < b < 10^9을 만족하는 양의 정수이다.
입력의 끝은 0을 포함한 줄로 표시된다. 데이터셋의 수는 1000을 넘지 않는다.
출력
각 데이터셋에 대해, 임대료가 Port 씨의 예산과 정확히 같은 수직으로 인접한 층 중 층 수가 최대인 계획을 나타내는 양의 정수 두 개를 한 줄에 출력한다. 첫 번째는 가장 낮은 층 번호, 두 번째는 층 수이다.