2453. 摧毁一系列目标;2121. 相同元素的间隔之和;2075. 解码斜向换位密码

2453. 摧毁一系列目标

核心思想:找出与space取模一样的最多的数中的最小值。

2453. 摧毁一系列目标;2121. 相同元素的间隔之和;2075. 解码斜向换位密码_第1张图片

 2121. 相同元素的间隔之和

核心思想:与相同元素的等距离问题一模一样。我们首先将相同值的坐标统计出来,然后对于a[i]的和为s',对于a[i-1]的和为s,s'-s = (n-2*i)*(a[i]-a[i-1]),然后就转换为了一个数学问题,i*(a[i]-a[i-1])为s'相对于s增加的部分,(a[i]-a[i-1])*(n-i)相当于s'相对于s减少的部分,用前面部分减去这一部分就推出了上面那个公式,然后我们首先计算出a[0]然后,即可求出所有的a[i]。a就是我们统计的相同值的下标。

2453. 摧毁一系列目标;2121. 相同元素的间隔之和;2075. 解码斜向换位密码_第2张图片

 2075. 解码斜向换位密码

核心思想:问题就是问你加密后的密码的原码是多少,然后我们直接枚举每条斜线的开头即可,(0,0),(0,1)...(0,cols-1),然后最后多余的空格用rstrip去掉后面的空格即可,然后矩阵中的坐标和encodedText的下标的关系为(i*cols+j)。

2453. 摧毁一系列目标;2121. 相同元素的间隔之和;2075. 解码斜向换位密码_第3张图片

 

你可能感兴趣的:(python)