브루와 오렌지 나누기

아직 제출이 없습니다시간 제한0.1초메모리 제한1024 MB

문제

브루의 창고에는 11 이상 10910^9 이하의 맛을 가진 오렌지가 각각 10910^9개씩 쌓여있다. 브루는 친구들과 같이 오렌지를 나눠 먹으려 한다.

브루는 친구를 총 NN명 초대할 예정이다. NN의 값은 아직 정해지지 않았다. NN명의 친구들은 일렬로 서서 브루가 주는 오렌지를 한 개씩 받아간다. 브루는 아래와 같은 조건을 만족하도록 오렌지를 주고 싶다.

먼저 온 친구부터 차례로 11번, 22번, \cdots, NN번 친구라고 하자. 또한, ii번 친구가 받은 오렌지의 맛을 A_iA\_i라고 하자. 이때,

  • i\<ji\<j이고 A_i<A_jA\_i < A\_j(i,j)(i, j)XX개이다.
  • i\<ji\<j이고 A_i>A_jA\_i > A\_j(i,j)(i, j)YY개이다.

또한, 만약 위 조건을 만족하도록 오렌지를 나눠 주는 방법이 여러 가지인 경우 브루는 (오렌지를 최대한 아끼기 위해) 그 중 NN이 가장 작은 방법을 고르려 한다. 브루의 조건을 만족하도록 친구들을 초대해 오렌지를 나눠주는 프로그램을 만들어 보자.

입력

첫 줄에 두 정수 XX, YY가 띄어쓰기로 구분되어 주어진다.

출력

첫 줄에는 초대할 친구의 수 NN을 출력한다.

둘째 줄에는 NN명의 친구에게 나눠줄 오렌지의 맛 A_1,A_2,,A_NA\_1, A\_2, \cdots, A\_N을 띄어쓰기로 구분하여 출력한다.

만약 가능한 방법이 여러 가지인 경우 NN이 최소인 방법을 출력하고, 이마저도 여러 가지일 경우 NN이 최소인 방법 중 아무거나 출력한다.

위 조건을 만족하는 N106N \le 10^6인 방법이 항상 존재함이 보장된다.

제한

  • 0X,Y1090 \le X, Y \le 10^9
  • X+Y>0X + Y > 0
  • AA의 각 원소는 11 이상 10910^9 이하의 정수