对于每个 ai ,令 ri=aimodi ,所以 bimodi=i−ri 。
所以考虑 bi ,就枚举从 i−ri 开始,i×2−ri,i×3−ri,... ,最多枚举到 106 即可。
时间复杂度:O(106×logn)
小红有一个长度为 n 的数组 a ,他想让你用这个数组 a 来构造一个长度同样为 n 的数组 b 。
你需要使得这个数组 b 的每个元素值都在 [1,109] 之间,且所有元素各不相同。
此外,你还需要使得 (ai+bi)modi=0,(1≤i≤109) 。
第一行,一个整数 n(1≤n≤105) ,表示数组的长度。
第二行,n 个数表示数组 a 的 n 个元素,第 i 个元素 ai∈[1,106]
一行,n 个数表示构造出的数组 b 。
输入
5
1 2 3 4 5
输出
1 2 3 4 5