- 博客(12)
- 收藏
- 关注
原创 Codeforces Round 954 (Div. 3) Editorial(A-E)
mp[x],x为余数,nums即为其中的数字,如果nums.size()为偶数,直接计算即可,如果为奇数,只能出现一次,否则输出-1,最后计算为奇数的情况,我这里使用前缀和,枚举哪一个数字作为最中间的那个数,找到最小值即可。要求找出最小的字符串,贪心思想,先记录t中字母出现次数,对给出的索引数组排序,从小到大遍历索引,对26个字母进行遍历,找到第一个不为0的字母,进行替换。数据范围小,观察题目,要求加n-2个符号,说明其中一个数字要连着,我们可以直接枚举所有情况,然后贪心找出最小值。直接枚举x的位置即可。
2024-06-25 17:51:47
461
原创 Codeforces Round 946 (Div. 3)(A-E)
思路:构造,把'N','S','E','W',先平均分配给A,B,再判断其中剩余的情况,使其能够刚好抵消,如果不能,就最后无法相等,其中要确保两者都要行动,我们用cnt来记录,在modify中cnt值小的移动。思路:动态规划,dp[i]定义为幸福值为i的最小花费,dp[i]=min(dp[i],dp[i-h]+c)=c1和 b2==c2 和 b3==c3。mp2保存b1==c1和 b2!=c2和 b3==c3。mp3保存b1==c1和b2==c2和b3!思路:先取出辅助串r,得到替换规律,直接输出即可。
2024-05-21 21:32:10
421
原创 atcoder abc 353(A-E)
思路:前缀和,求出i~n的和,对于当前a[i]要乘多少,由i以后的数的位数决定,预处理i~n的数的位数之和,只需要a[i]*prod[i+1]即可求出a[i]与之后的数串联起来a[i]相应的值,再加上a[i]之后的数之和就可以了。思路:先排序,在顺序遍历,当前数为a[i],在i+1~n中二分找到a[i]+a[j]>=1e8的个数m,最后减去m*1e8,加上sum*(n-1),每个数被加了n-1次。给定x,y,f(x,y)=xy(x,y串连起来),求∑(N−1,j)∑(N,i)f(Ai,Aj).
2024-05-16 21:50:53
517
原创 python在创建二维数组时的易错处
今天在刷题的过程中,本小白发现了个易混点,自己一直以来好像都没搞明白,在此分享给诸位。在pyhton中要得到一个二维数组,我们有两种方法:1. s=[ [0for _ in range(3)] ]*32. s=[[0]*3 for _ in range(3)]这两种形式输出都是:
2023-07-01 23:50:44
128
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人