AT_arc123_f.[ARC123F] Insert Addition

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

对于整数列 P=(P1,…,PM)P = (P_1, \ldots, P_M),我们定义操作 f(P)f(P) 为:对于每个 1≤i≤M−11 \leq i \leq M-1,在 PiP_i 和 Pi+1P_{i+1} 之间插入 Pi+Pi+1P_i + P_{i+1}。更形式化地,定义如下:

  • 对于 1≤i≤M−11 \leq i \leq M-1,令 Qi=Pi+Pi+1Q_i = P_i + P_{i+1}。
  • 长度为 2M−12M-1 的数列 f(P)f(P) 定义为 f(P)=(P1,Q1,P2,Q2,…,PM−1,QM−1,PM)f(P) = (P_1, Q_1, P_2, Q_2, \ldots, P_{M-1}, Q_{M-1}, P_M)。

给定正整数 a,b,Na, b, N(其中 a,b≤Na, b \leq N)。从数列 A=(a,b)A = (a, b) 开始,按照以下步骤定义数列 B=(B1,B2,…)B = (B_1, B_2, \ldots):

  • 将 AA 替换为 f(A)f(A) 的操作重复 NN 次。
  • 然后,将数列 AA 中大于 NN 的数去除,得到数列 BB。

请你求出 BL,…,BRB_L, \ldots, B_R。

输入格式

输入为一行,格式如下:

aa bb NN LL RR

输出格式

请输出 BL,…,BRB_L, \ldots, B_R,用空格分隔,输出一行。

输入输出样例

  • 输入#1

    1 1 4
    1 7

    输出#1

    1 4 3 2 3 4 1
  • 输入#2

    1 1 4
    2 5

    输出#2

    4 3 2 3
  • 输入#3

    2 1 10
    5 15

    输出#3

    8 3 10 7 4 9 5 6 7 8 9
  • 输入#4

    10 10 10
    2 2

    输出#4

    10

说明/提示

限制条件

  • 1≤N≤3×1051 \leq N \leq 3 \times 10^5
  • 1≤a,b≤N1 \leq a, b \leq N
  • 1≤L≤R≤10181 \leq L \leq R \leq 10^{18}
  • R−L<3×105R - L < 3 \times 10^5
  • RR 不超过数列 BB 的长度

样例解释 1

初始时 A=(1,1)A = (1, 1)。经过 f(A)f(A) 操作,数列 AA 的变化如下:

  • 第 1 次操作:A=(1,2,1)A = (1, 2, 1)
  • 第 2 次操作:A=(1,3,2,3,1)A = (1, 3, 2, 3, 1)
  • 第 3 次操作:A=(1,4,3,5,2,5,3,4,1)A = (1, 4, 3, 5, 2, 5, 3, 4, 1)
  • 第 4 次操作:A=(1,5,4,7,3,8,5,7,2,7,5,8,3,7,4,5,1)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)。本题要求输出该数列的第 11 项到第 77 项。

样例解释 2

本样例下,B=(1,4,3,2,3,4,1)B = (1, 4, 3, 2, 3, 4, 1)。本题要求输出该数列的第 22 项到第 55 项。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页