給
定
序
列
長
n
的
數
組
和
k
。
完
美
義
是
中
每
一
個
連
續
項
子
段
為
值
給定序列長n的數組和k。完美數組的定義是數組中每一個連續k項的子段和為定值
現
在
要
求
插
入
些
使
得
滿
足
條
件
,
輸
出
你
構
造
新
.
現在要求插入一些數使得數組滿足條件,輸出你構造的新數列.
−
分
割
線
!
h
e
\color{Red}{---------------------分割線!!hehehe----------------------}
−−−−−−−−−−−−−−−−−−−−−分割線!!hehehe−−−−−−−−−−−−−−−−−−−−−−
這
題
其
實
很
友
好
了
原
直
提
醒
不
必
最
短
意
味
着
有
方
法
可
以
簡
單
來
這題其實很友好了,在原題中一直提醒你不必構造最短的數列!!!這意味着有方法可以很簡單的構造出來。
當
種
類
大
于
能
那
我
們
考
慮
小
情
況
(
下
面
a
假
)
當數組中數的種類大于k是一定不能構造的,那我們現在考慮小于k的情況。(下面的數組a是假定構造完的數列)
[
1
]
到
說
明
2
+
也
等
所
=
定值為a[1]到a[k]的子段和,說明a[2]到a[k+1]也等于這個定值,是以a[k+1]==a[1]
麼
隻
需
就
往
後
(
循
環
節
)
那麼現在很簡單,我們隻需要a[1]到a[k]就可以一直往後構造(一個循環節)
用
互
相
同
字
填
充
,
夠
話
随
便
添
加
什
都
啦
然
次
a[1]到a[k]用原數組中互不相同的數字填充,不夠的話你随便添加什麼都可以啦~然後就一直構造n次......
a[1]到a[k]用原數組中互不相同的數字填充,不夠的話你随便添加什麼都可以啦 然後就一直構造n次......