atcoder#ARC123F. [ARC123F] Insert Addition

[ARC123F] Insert Addition

题目描述

整数列 P = (P1, , PM) P\ =\ (P_1,\ \ldots,\ P_M) に対して、各 1 i M1 1\leq\ i\leq\ M-1 に対して Pi P_i Pi+1 P_{i+1} の間に Pi + Pi+1 P_i\ +\ P_{i+1} を挿入することで得られる数列を f(P) f(P) と書くことにします。より形式的には次の通りです:

  • 1 i M  1 1\leq\ i\leq\ M\ -\ 1 に対して Qi = Pi + Pi+1 Q_i\ =\ P_i\ +\ P_{i+1} とする。
  • 2M1 2M-1 項からなる数列 f(P) f(P) を $ f(P)\ =\ (P_1,\ Q_1,\ P_2,\ Q_2,\ \ldots,\ P_{M-1},\ Q_{M-1},\ P_M) $ により定める。

正の整数 a, b, N a,\ b,\ N (ただし a, b N a,\ b\leq\ N )が与えられます。数列 A = (a, b) A\ =\ (a,\ b) から始めて、以下の手順によって数列 B = (B1, B2, ) B\ =\ (B_1,\ B_2,\ \ldots) を定めます。

  • A A f(A) f(A) に取り換えることを、N N 回繰り返す。
  • その後、数列 A A から N N より大きな値を取り除いてできる数列を、数列 B B とする。

BL, , BR B_L,\ \ldots,\ B_R を求めてください。

输入格式

入力は以下の形式で標準入力から与えられます。

a a b b N N L L R R

输出格式

BL, , BR B_L,\ \ldots,\ B_R を空白区切りで 1 1 行で出力してください。

题目大意

对于一个有 MM 个元素的整数序列 P=(P1,...,PM)P=(P_1,...,P_M) ,定义 f(P)f(P) 为:在原序列中,向每个 Pi+P_i+Pi+1P_{i+1} 之间插入一个值为 Pi+Pi+1P_i+P_{i+1} 的元素( 1iM11\leq i\leq M-1 )得到的序列。

更形式化的:

  • Qi=Pi+Pi+1,1iM1Q_i=P_i+P_{i+1},1\leq i\leq M-1.

  • f(P)f(P) 被定义为一个由 2M12M-1 个整数组成的序列 f(P)=(P1,Q1,P2,Q2,...,PM1,QM1,PM)f(P)=(P_1,Q_1,P_2,Q_2,...,P_{M-1},Q_{M-1},P_M).

现给定三个正整数 a,b,Na,b,Na,bNa,b\leq N 。开始时序列 A=(a,b)A=(a,b)

接下来,进行 NN 次如下操作:将 AA 变为 f(A)f(A)

最后,将序列 AA 中所有大于 NN 的数删去,得到最终的序列 BB

给定 L,RL,R ,输出 BL,...,BRB_L,...,B_R

1 1 4
1 7
1 4 3 2 3 4 1
1 1 4
2 5
4 3 2 3
2 1 10
5 15
8 3 10 7 4 9 5 6 7 8 9
10 10 10
2 2
10

提示

制約

  • 1 N 3× 105 1\leq\ N\leq\ 3\times\ 10^5
  • 1 a, b N 1\leq\ a,\ b\leq\ N
  • 1 L R 1018 1\leq\ L\leq\ R\leq\ 10^{18}
  • R  L < 3× 105 R\ -\ L\ <\ 3\times\ 10^5
  • R R は数列 B B の項数以下である

Sample Explanation 1

はじめ A = (1, 1) A\ =\ (1,\ 1) です。A A f(A) f(A) を取り換える操作により、数列 A A は以下のように変化します: - 1 1 回目の操作:A = (1, 2, 1) A\ =\ (1,\ 2,\ 1) - 2 2 回目の操作:A = (1, 3, 2, 3, 1) A\ =\ (1,\ 3,\ 2,\ 3,\ 1) - 3 3 回目の操作:A = (1, 4, 3, 5, 2, 5, 3, 4, 1) A\ =\ (1,\ 4,\ 3,\ 5,\ 2,\ 5,\ 3,\ 4,\ 1) - 4 4 回目の操作:$ A\ =\ (1,\ 5,\ 4,\ 7,\ 3,\ 8,\ 5,\ 7,\ 2,\ 7,\ 5,\ 8,\ 3,\ 7,\ 4,\ 5,\ 1) $ したがって B = (1, 4, 3, 2, 3, 4, 1) B\ =\ (1,\ 4,\ 3,\ 2,\ 3,\ 4,\ 1) となります。この数列の第 1 1 項目から第 7 7 項目までが答えとなります。

Sample Explanation 2

この入力例でも、B = (1, 4, 3, 2, 3, 4, 1) B\ =\ (1,\ 4,\ 3,\ 2,\ 3,\ 4,\ 1) となります。この数列の第 2 2 項目から第 5 5 項目までが答えとなります。