z1z2z3
z1z2z3
全部文章
Rating1...
归档
标签
去牛客网
登录
/
注册
z1z2z3的博客
全部文章
/ Rating1000题记
(共5篇)
游游的字母翻倍
更新 被降维打击了。原来模拟能做。。。orz 可以将字符串按照区间位置进行切片,将[l, r]的切片中的每个字符都复制一遍就好了,完全不需要差分来做,想想也是这道题用差分也只用了一次,完全没有必要,还是我太菜了。 n, m = map(int, input().split()) s = input(...
Python3
字符串
2024-05-08
0
261
小红的回文串构造
小红拿到了一个回文串,她希望你将这个回文串重排,使得重排后仍然是回文串且和原串不同。你能帮帮她吗? 本题依然是个思维题,让回文串重排且要求与原串不同,很容易想到前面做过的循环移位与排列构造问题,将字符串对半砍,将前半部分循环移位即是最可能与原串不同的字符串排列,然后再将重新排列后的字符串重新组合,若...
Python3
字符串
2024-05-08
0
198
小红不想做完全背包(easy)
一开始我还真按完全背包的思路去做了,结果发现初始化好像走不通。 在我完全背包的思路中也想到了将数列中的每个数都模3,f(i, j)表示从前i个数中选,能恰好满足j%3==0的最少物品数量。 结果最后才发现是多此一举了,每个物品的价格都模3了,最后能凑出来的结果不是很显然了吗,直接判读就可以了。 最后...
Python3
2024-05-07
0
161
A加B,A模B
这种题肯定不是硬算求的,我们来找一下ab与n和m之间的关系。 已知条件为a + b = n和a % b = m 很显然,n应该是大于m的,如何证明呢? 根据a+b=n推得,a最大为n-1,b最小就为1,此时m取最大,为(n-1) % 1 = n-1,即m=n-1 因此m <= n时才合法。 再...
Python3
数学
2024-05-07
0
208
子段和
又是一个思维题。 本题要找是否存在一个序列使得临近两数的和始终不等于0,很容易能想到先对数列进行排序,然后中间正负的两项即为最有可能和等于0的两项。假设这两个数为a[i]和a[i+1]吧。 此时,如果序列中存在一个数a[k],并a[k]!=a[i]且a[k]!=a[i+1],这样把a[k]移到a[i...
Python3
2024-05-07
0
177