题目名称 | 2991. [POJ 1722]减操作 |
---|---|
输入输出 | subtract.in/out |
难度等级 | ★★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 | syzhaoss 于2018-10-10加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:1, 提交:1, 通过率:100% | ||||
syzhaoss | 100 | 0.000 s | 0.00 MiB | C++ |
关于 减操作 的近10条评论(全部评论) |
---|
给定一个整数数组 $a_1,a_2,\cdots,a_n$。
定义数组第 $i$ 位上的减操作:把 $a_i$ 和 $a_{i+1}$ 换成 $a_i-a_{i+1}$。
用 $con(a,i)$ 表示减操作,可以表示为:
$con(a,i)=[a_1,a_2,\cdots,a_{i-1},a_i-a_{i+1},a_{i+2},\cdots,a_n]$
长度为 $n$ 的数组,经过 $n-1$ 次减操作后,就可以得到一个整数 $t$。
例如数组$ [12,10,4,3,5] $经过如下操作可得到整数 $4$:
$con([12,10,4,3,5],2)=[12,6,3,5]$
$con([12,6,3,5],3)=[12,6,−2]$
$con([12,6,−2],2)=[12,8]$
$con([12,8],1)=[4]$
现在给定数组以及目标整数,求完整操作过程。
第 $1$ 行包含两个整数 $n$ 和 $t$。
第 $2$到$n+1$ 行:第 $i$ 行包含数组中的第 $i$ 个整数 $a_i$。
输出共 $n-1$ 行,每行包含一个整数,第 $i$ 行的整数表示第 $i$ 次减操作的操作位置。
5 4 12 10 4 3 5
2 3 2 1
$1\leq n\leq 100,-10000\leq t\leq 10000,1\leq a_i\leq 100$。