摘要: A - A to Z String 2 代码: void solve(int Case) { int n; string s = " "; cin >> n; int k; cin >> k; for (int i = 'A'; i <= 'Z'; i++) { for (int j = 1; j 阅读全文
posted @ 2022-06-26 09:53 指引盗寇入太行 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 1067. [SCOI2007]降雨量 思路: 只有a[l]>=a[r] && a[x]>a[r] {x,l<x<r}满足为true,使用st表或者线段树维护最大值即可, 其他情况分类讨论 代码: #include <bits/stdc++.h> #define int long long int 阅读全文
posted @ 2022-06-24 16:10 指引盗寇入太行 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 3245. 最快路线 思路: 最短路,d[i][j],表示在i号点,速度为j的最短距离,记录每次转移的状态即可 代码: #include <bits/stdc++.h> #define int long long int _ = 0, Case = 1; using namespace std; # 阅读全文
posted @ 2022-06-23 16:19 指引盗寇入太行 阅读(9) 评论(0) 推荐(0) 编辑
摘要: [HAOI2008]移动玩具 思路: 把矩阵压缩,然后bfs即可 代码: #include <bits/stdc++.h> #define int long long int _ = 0, Case = 1; using namespace std; #define all(v) begin(v), 阅读全文
posted @ 2022-06-23 15:53 指引盗寇入太行 阅读(19) 评论(0) 推荐(0) 编辑
摘要: E - Distance Sequence 思路: 考虑动态规划,前i项以j结尾的个数,第i-1项一定是上一项结尾小于等于j-k的个数+上一项结尾大于等于j+k的个数 代码: #include <bits/stdc++.h> #define int long long int _ = 0, Case 阅读全文
posted @ 2022-06-16 15:58 指引盗寇入太行 阅读(27) 评论(0) 推荐(0) 编辑
摘要: A - You should output ARC, though this is ABC. 代码: #include <bits/stdc++.h> #define int long long int _ = 0, Case = 1; using namespace std; #define al 阅读全文
posted @ 2022-06-12 11:50 指引盗寇入太行 阅读(44) 评论(0) 推荐(0) 编辑
摘要: D. Max GEQ Sum 要求所有的区间都满足最大值大于区间和 思路: 考虑每一个数字在他的区间里面的贡献,假设x在L到R中是最大值,那么要求l到r的最大子段和小于等于x就可以满足条件,x左右第一个大于x的数可以使用单调栈求解,区间最大子段和使用线段树 代码: #include <bits/st 阅读全文
posted @ 2022-06-05 17:29 指引盗寇入太行 阅读(44) 评论(0) 推荐(0) 编辑
摘要: ###P4145 上帝造题的七分钟 2 / 花神游历各国 代码 每个数字最多进行6次操作会变成1 假如区间内的数字都是1,即可停止操作 const int N = 100010; int a[N]; struct T { int l, r, val, tag; } tr[N << 2]; void 阅读全文
posted @ 2022-05-02 12:26 指引盗寇入太行 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 仓鼠的鸡蛋 思路: 把线段树权值全部置为m,维护区间最大值,每次优先找满足条件的左边的区间 const int N = 500010; int cnt[N]; int a[N]; int n, m, k; int tr[N << 2]; int M = 1; void pushup(int p) { 阅读全文
posted @ 2022-04-28 19:53 指引盗寇入太行 阅读(309) 评论(0) 推荐(0) 编辑
摘要: HH的项链 思路: 离线按照r排序,然后把小于r的数字加到线段树中,同时把出现过的a[j]的位置在线段树中删掉 代码: #define read() FastIO::read() #define clean() FastIO::flush() const int N = 1000010; int a 阅读全文
posted @ 2022-04-26 17:13 指引盗寇入太行 阅读(104) 评论(0) 推荐(0) 编辑