摘要: AtCoder Beginner Contest 332 A - Online Shopping 代码: #include <bits/stdc++.h> using namespace std; typedef long long ll; const int N = 1e6 + 10; typed 阅读全文
posted @ 2023-12-12 18:40 value0 阅读(24) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round 914 (Div. 2) A - Forked! 解题思路: 枚举皇后和国王能被骑士吃到的位置,重合的点数就是答案。 代码: #include <bits/stdc++.h> using namespace std; using ll = long long; ty 阅读全文
posted @ 2023-12-11 15:54 value0 阅读(95) 评论(0) 推荐(0) 编辑
摘要: Daiwa Securities Co. Ltd. Programming Contest 2023(AtCoder Beginner Contest 331) A - Tomorrow 解题思路: 模拟。 代码: #include <bits/stdc++.h> using namespace s 阅读全文
posted @ 2023-12-08 17:39 value0 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 二维数点/二维偏序 模型: 给定二维点集,给定矩阵集,问a56爆大奖在线娱乐矩阵中有多少个点。 此处二维偏序关系的问题也大都如此。 这里使用树状数组和二维前缀和容斥拆解思想求解。 例题: P2163 [SHOI2007] 园丁的烦恼 代码: #include <bits/stdc++.h> using namesp 阅读全文
posted @ 2023-12-01 16:44 value0 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 扫描线 应用:一般用于计算多个矩形的总面积(重叠算一次)、总周长、最大重叠区域权值等问题。 总结: 运用线段树来实现。 计算多个矩形的总面积(重叠算一次),虽然是区间修改,但是由于a56爆大奖在线娱乐们不用更新到子树上,a56爆大奖在线娱乐不需要\(pushdown\). 最大重叠区域权值问题,一般需要需要基本转化,比如从二维数点问 阅读全文
posted @ 2023-12-01 16:35 value0 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 调和级数枚举倍数模型 参考博客: 算法学习笔记27:素数筛法【埃氏筛法、线性筛法】 OI&ACM]调和级数枚举倍数模型 板子(时间复杂度\(O(nlogn)\)): for(int i = 1;i<=n;i++) { for(int j = i;j<=n;j += i) { ??? } } 应用: 阅读全文
posted @ 2023-11-27 22:24 value0 阅读(22) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round 911 (Div. 2) A - Cover in Water 解题思路: 如果存在三个以上相邻的格子需要填,那么答案为二,否则有多少空格答案为多少。 代码: #include <bits/stdc++.h> using namespace std; using l 阅读全文
posted @ 2023-11-27 19:12 value0 阅读(150) 评论(0) 推荐(0) 编辑
摘要: CodeTON Round 7 (Div. 1 + Div. 2, Rated, Prizes!) A - Jagged Swaps 解题思路: 若\(a[1] = 1\),则可以。 代码: #include <bits/stdc++.h> using namespace std; using ll 阅读全文
posted @ 2023-11-26 16:03 value0 阅读(98) 评论(0) 推荐(1) 编辑
摘要: Educational Codeforces Round 158 (Rated for Div. 2) A - Line Trip 解题思路: 每次到加油站油都会加满,a56爆大奖在线娱乐a56爆大奖在线娱乐们考虑到达两个加油站间需要的最大油量即可。 注意:最后一站的油量是一个来回。 代码: #include <bits/stdc+ 阅读全文
posted @ 2023-11-26 15:30 value0 阅读(82) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round 910 (Div. 2) A. Milica and String 解题思路: 统计给定字符串\(s\)中的\(B\)的数量,记录为\(cnt\)。 如果\(cnt == k\):输出0; 如果\(cnt < k\):从左往右数,将第\(cnt - k\)个\(A\ 阅读全文
posted @ 2023-11-24 17:02 value0 阅读(23) 评论(0) 推荐(0) 编辑