AT_arc086_b.[ABC081D] Non-decreasing

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

すぬけ君有一个长度为 NN 的数列 aa,数列的第 ii 个数为 aia_i(下标从 1 开始)。

他可以进行如下操作任意次:

  • 操作:选择 11 到 NN 之间的整数 x,yx,y,然后将 axa_x 加到 aya_y 上。

すぬけ君希望通过 00 到 2N2N 次操作,使数列 aa 满足以下条件。请给出一种符合要求的操作序列。在本题的限制下,一定存在使数列满足条件的操作方法。

  • 条件:a1≤a2≤...≤aNa_1 \leq a_2 \leq ... \leq a_N。

输入格式

输入通过标准输入给出,格式如下:

N a1 a2 ... aNN\ a_1\ a_2\ ...\ a_N

输出格式

第一行输出操作次数 mm。
接下来的 mm 行中,第 ii 行输出第 ii 次操作选择的 xx 和 yy,用空格隔开。只要 0≤m≤2N0 \leq m \leq 2N 且经过 mm 次操作后 aa 满足条件即可视为正确答案。

输入输出样例

  • 输入#1

    3
    -2 5 -1

    输出#1

    2
    2 3
    3 3
  • 输入#2

    2
    -1 -3

    输出#2

    1
    2 1
  • 输入#3

    5
    0 0 0 0 0

    输出#3

    0

说明/提示

约束条件

  • 2≤N≤502 \leq N \leq 50
  • −106≤ai≤106-10^6 \leq a_i \leq 10^6
  • 输入均为整数

样例说明 1

  • 第 1 次操作后,a=(−2,5,4)a = (-2, 5, 4)
  • 第 2 次操作后,a=(−2,5,8)a = (-2, 5, 8),满足条件。

样例说明 2

  • 第 1 次操作后,a=(−4,−3)a = (-4, -3),满足条件。

样例说明 3

  • 已经满足条件。

由 ChatGPT 5 翻译

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

首页