摘要: Two Screens : 签到题 code: #include <bits/stdc++.h> using namespace std; int T; string s1,s2; int len1,len2; int main() { ios::sync_with_stdio(false);cin 阅读全文
posted @ 2024-10-19 15:30 kanade16 阅读(41) 评论(0) 推荐(0) 编辑
摘要: I,K,B,E都比较水,就不写了 F:Custom-Made Clothes: 交互题,直接求解第k大有难度,由于对于任意一个点(x,y),只能确定左下与右上部分的数与它的大小关系,对于左上与右下部分的数,无法确定其大小关系,这时扭转思路,想到可以试验数val是否为第k大,由此想到二分答案,并通过单 阅读全文
posted @ 2024-10-11 20:00 kanade16 阅读(16) 评论(0) 推荐(0) 编辑
摘要: #include <bits/stdc++.h> using namespace std; const int N = 1 * 1010; const int MN = - N * N - 10; const char cc[6] = {'n','a','r','e','k'}; string s[ 阅读全文
posted @ 2024-09-27 00:01 kanade16 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 性质1:题目操作相当于将前面的数搬到了后面,将其视为柱状图,则是把前面柱的高度转移至后面柱的高度 性质2:最后移成的序列以单调不下降序列为最优,易证明当存在下降时,可通过操作使答案更优或不变差 性质3:由于性质2,易得最佳序列尾部最高,故可以通过栈来维护,其为单调栈,栈口最高 性质4:对于确定的总和 阅读全文
posted @ 2024-09-25 17:36 kanade16 阅读(26) 评论(0) 推荐(1) 编辑
摘要: #include <bits/stdc++.h> #define int long long using namespace std; int len; int m; int rt = 0; int has[1000010]; void init() { srand(1); has[0] = 1; 阅读全文
posted @ 2024-09-24 20:27 kanade16 阅读(8) 评论(0) 推荐(0) 编辑
摘要: #include <bits/stdc++.h> using namespace std; int T; int n; struct edge { int pre; int nxt; int val; }e[110]; int cnt = 0,rt; int temp; int main() { s 阅读全文
posted @ 2024-09-23 00:17 kanade16 阅读(12) 评论(0) 推荐(0) 编辑
摘要: #include <bits/stdc++.h> using namespace std; const int N = 35 * 1000 + 10; int n; int f[N],a[N]; vector <int> pre[N]; int dp[N]; long long ans[N]; in 阅读全文
posted @ 2024-09-22 01:03 kanade16 阅读(7) 评论(0) 推荐(0) 编辑