摘要: 蓝书 AcWing 109. 天才ACM 思路:使用倍增思想,如果普通二分的时间复杂度为logn,但当t非常小的时候相比倍增反而需要花费更多的时间,因为每次都是折半找,而倍增利用了二进制的思想,每一段都可以用2的几次方之和来表示,那么对于此题,长度的枚举先从1开始,初始化st和ed为0,只要len不 阅读全文
posted @ 2022-03-10 11:08 menitrust 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 蓝书 AcWing 106. 动态中位数 思路:对顶堆,设第一个数为mid,之后的数读进来一次比较大小决定放入大根堆还是小根堆,然后当i为奇数的时候输出当前的中位数。 注意一下格式问题,当中位数的个数不能整除10的时候最后还要加个换行。 #include<iostream> #include<cst 阅读全文
posted @ 2022-03-09 14:01 menitrust 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 蓝书 AcWing 103. 电影 思路:将所有科学家讲的语言以及字幕和语音的语言存到一个数组里,然后对数组进行排序去重,然后开一个ans数组保存答案,先利用二分查找将科学家懂的语言保存在答案数组里,然后对于电影的字幕和语言语言分别二分找一下它们在ans数组里的个数,即懂得这个语言的科学家的数量,找 阅读全文
posted @ 2022-03-08 14:57 menitrust 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 蓝书 AcWing 100. IncDec序列 思路:一开始想的是每个数都减去一个数,以为是平均值,后面想到差分就让每个数减去它前面一个构造了差分数组,因为我们最终是要让序列的每一个数都一样,所以我们让b[1]=a[1],让b[2-n]变成0,预处理出2-n的正数和z和负数和f,一部分的操作次数就是 阅读全文
posted @ 2022-03-07 18:17 menitrust 阅读(29) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #775 (Div. 2) A-C A. Game 题意:给你一个01序列,1代表陆地0代表海洋,相邻的陆地可以走,对于海洋而言你有一次机会花费i+x个金币跳到任意陆地x,问最小花费 找到第一个0和最后一个0,计算一下花费即可,特判一下全是陆地的情况。 感想:一开始 阅读全文
posted @ 2022-03-07 18:15 menitrust 阅读(26) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #774 (Div. 2) A-C A #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> using namespace std; ty 阅读全文
posted @ 2022-03-07 18:10 menitrust 阅读(27) 评论(0) 推荐(0) 编辑
摘要: A. Game 题意:给你一个01序列,1代表陆地0代表海洋,相邻的陆地可以走,对于海洋而言你有一次机会花费i+x个金币跳到任意陆地x,问最小花费 找到第一个0和最后一个0,计算一下花费即可,特判一下全是陆地的情况。 感想:一开始读题读错了,以为是可以无限制跳,得注意 #include<iostre 阅读全文
posted @ 2022-03-06 23:40 menitrust 阅读(24) 评论(0) 推荐(0) 编辑
摘要: AcWing 91. 最短Hamilton路径 利用状态压缩dp降低空间复杂度,我们定义dp[i][j],其中i为二进制表示,某一位为1表示已经走过了,0位没走过,j为当前处于哪个点,那么我们最后要求的就是dp[(1<<20)-1][n-1],即每一个点都走过了并且已经走到终点的路径数。需要初始化一 阅读全文
posted @ 2022-03-06 22:55 menitrust 阅读(23) 评论(0) 推荐(0) 编辑
摘要: A - T-shirt 有一群人,编号1-N,其中某一个人编号为X,在A和A之前的可以获得t恤,在A+1到B的人其中有C个可以获得t恤,给你A B C X,让你求出X获得t恤的概率。 读太快看漏了,以为是A到B其中的人有C个 double a, b, c, x; scanf("%lf%lf%lf%l 阅读全文
posted @ 2022-03-06 11:56 menitrust 阅读(40) 评论(0) 推荐(0) 编辑
摘要: A #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> using namespace std; typedef long long ll; const int N=1e6 阅读全文
posted @ 2022-03-06 00:31 menitrust 阅读(47) 评论(0) 推荐(0) 编辑