- 博客(11)
- 收藏
- 关注
原创 acWing 123. 士兵
此处贴出蓝书对其(货仓选址)关于选取中位数的证明:把A[1]~A[N] 排序, 设货仓建在 X 坐标处,X 左侧的商店有P家,右侧的商店有Q家。第一次排序之后,假设最后放置好的位置的最左边是d+1,那么他们依次为的位置d+1,d+2,......,d+n;|x[1]-(d+1)| + |x[2]-(d+2)| + ...... + |x[n]-(d+n)|的最小值。|(x[1]-1)-d| + |(x[1]-2)-d| + ...... + |(x[n]-n)-d|的最小值。很简单,只要把他们的X。
2023-10-24 17:27:31 35
原创 acwing122.糖果传递
此处贴出蓝书对其的证明:把A[1]~A[N] 排序, 设货仓建在 X 坐标处,X 左侧的商店有P家,右侧的商店有Q家。当 P=Q 时为最优解。假设a[i]表示初始每个人糖果数量,x[i]表示第i个人向左传递的糖果数量,ave表示平均每个人应得的数量,那么:ave=a[i]-x[i]+x[i+1](i
2023-10-24 15:18:36 43
原创 acwing120.防线(算法竞赛进阶指南)
由题意知,最多有一个点是奇数个防具,通过统计前缀和可以知道,从奇数点之后的每一个点的防具数前缀和都是奇数,若不存在奇数点,则前缀和都是偶数,若遍历统计前缀和则必然会t掉,而题中给出的每组数据规律来看,显然每一组都是等差数列,那么根据其求和公式求出前缀和即可。然后二分答案找到第一个奇数前缀和(这就是题目要找的防线弱点),若没找到那么就证明防线没有弱点。很光明正大的一道题。
2023-10-19 14:31:50 40
原创 树状数组轻度扩展
1.最简单的就不过多赘述,看看别人的文章就行对于数组a,多次操作加询问,修改其某个点,求其任意区间和树状数组d[x]保存a的序列区间[x-lowbit(x)+1,x];二进制k=7=即被分为【1,4】【5,6】【7,7】三个小区间从1~n,每一个数的前缀和都是被如此·安排。
2023-07-14 17:49:58 32 1
原创 280.陪审团
定义f[i][j][k]:i为前i个人,j为在前i个人中选了j个人,k为总的差值(因为k在数组内需要>=0,其实际范围是-400到400,所以k有400的偏移),f[i][j][k]则表示当前的最大和。dp之后寻找最小k(400对应最小,从400向两端搜索)及其对应的和,然后遍历找出所有被选中的人,存下编号,记录所求值,排序输出。
2023-07-13 11:13:43 42 1
原创 湖南理工学院2022年程序设计竞赛新生赛
由于要取余10000,所以字符串读入,取每个字符串的后四位然后相乘就好啦。I 皮卡丘的梦幻之旅(middle version)组合数问题,前面填了k行,接下来一行就只有m-k个选项了。J 皮卡丘的梦幻之旅(hard version)递推可得f(n)=1+2+3+.......+n;H.皮卡丘的梦幻之旅(easy version)A.lwy梦境中的斐波那契数列——诈骗签到题。同样模拟题,遍历每一个环,求最大值即可。我不可能可能输,所以只有平或者赢的可能。简单模拟,遍历加上图中的点即可。
2023-04-23 20:50:41 135 2
原创 henau1110题
简单的map容器的应用,key为string,value是出现次数,且不需要排序(map会自动对key进行排序)输入n组单词,统计不同单词出现的个数,并按照字典顺序输出。(n
2023-04-19 13:29:15 87 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人