摘要: T1题意: 求每个区间的最大值减最小值的和 思路: 预处理出每个值作为他所在的区间中的最大值和最小值的贡献,然后求和相减,使用单调栈可以处理在每个值最多可以在那个区间中作为最值; 代码: //枚举每个值在它的区间种的贡献 #include <bits/stdc++.h> #define int lo 阅读全文
posted @ 2022-03-14 17:20 指引盗寇入太行 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 分块 将数组分成sqrt(n)块,每次进行区间操作或者查询的时候,对于完整的块可以通过预处理的信息o1得到, 不完整的块直接暴力跑,所以最坏复杂度是sqrt(n)。 分块模板 const int N = 100010, B = sqrt(N); int block; int st[B], ed[B] 阅读全文
posted @ 2023-04-30 17:41 指引盗寇入太行 阅读(21) 评论(0) 推荐(0) 编辑
摘要: A a,b=map(int,input().split()) print(pow(a,b)) B n=int(input()) a=list(map(int,input().split())) q=int(input()) for i in range(q): op=list(map(int,inp 阅读全文
posted @ 2022-12-25 15:33 指引盗寇入太行 阅读(69) 评论(0) 推荐(0) 编辑
摘要: A 每个字符出现次数都是偶数,直接拼接 def solve(): s=input() t=s print(s+t[::-1]) t=int(input()) for i in range(t):solve() B 奇数个的情况下n个相同的数字就可以,偶数情况下,可以选择n-2个2,然后1,3 def 阅读全文
posted @ 2022-11-29 18:05 指引盗寇入太行 阅读(16) 评论(0) 推荐(0) 编辑
摘要: ###A void solve(int Case) { int n; cin >> n; vector<int>a(n); for (auto &i : a) cin >> i; cout << accumulate(all(a), 0) << nline; } B const int N = 55 阅读全文
posted @ 2022-10-09 17:03 指引盗寇入太行 阅读(27) 评论(0) 推荐(0) 编辑
摘要: Copy 题意: n个数字由两种操作,操作1,把l到r复制一遍然后粘贴到r后面,操作2,求第x个数字 思路: 对于一次操作完成之后的查询,如果x小于等于r,则不会产生影响,如果大于r,那么相当于查询x-(r-l+1)的数字; 所以选择倒着预处理,对于一次操作之后所有的查询x,将他们的x全部-=(r- 阅读全文
posted @ 2022-07-24 16:26 指引盗寇入太行 阅读(114) 评论(0) 推荐(0) 编辑
摘要: G.Link with Monotonic Subsequence 题目简述: 一个n的排列p,求最小的max(lis(p),lds(p)) 思路: 最大值应该为sqrt(n)上去整,然后构造即可如:4 3 2 1 8 7 6 5 11 10 9 代码: #include <bits/stdc++. 阅读全文
posted @ 2022-07-24 14:12 指引盗寇入太行 阅读(42) 评论(0) 推荐(0) 编辑
摘要: Dragon slayer 题解: 解法1:可以二进制枚举当前存在哪些墙,然后bfs; 解法2:可以观察到只有删掉墙才会有贡献,相当于边权为1,其他情况边权为0,采用状压01bfs 代码: #include <bits/stdc++.h> //#define int long long int _ 阅读全文
posted @ 2022-07-20 16:51 指引盗寇入太行 阅读(89) 评论(0) 推荐(0) 编辑
摘要: B. Integral Array 思路: 枚举因子,$[x/y]=z,则yz<=x<=yz+y-1$ 代码: #include <bits/stdc++.h> #define int long long int _ = 0, Case = 1; using namespace std; #defi 阅读全文
posted @ 2022-06-30 13:53 指引盗寇入太行 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 区间DP是通过小区间来转移从而取得大区间得结果; [CQOI2007]涂色 题目描述 假设你有一条长度为 $5$ 的木板,初始时没有涂过任何颜色。你希望把它的 $5$ 个单位长度分别涂上红、绿、蓝、绿、红色,用一个长度为 $5$ 的字符串表示这个目标:$\texttt{RGBGR}$。 每次你可以把 阅读全文
posted @ 2022-06-28 16:52 指引盗寇入太行 阅读(24) 评论(0) 推荐(0) 编辑
摘要: [POI2013]BAJ-Bytecomputer 思路: 动态规划,f[i][j],表示前i个第i个是以j结尾得最少操作次数 代码: package main import ( "bufio" . "fmt" "io" "os" ) var n int const N = 2000010 var 阅读全文
posted @ 2022-06-28 15:01 指引盗寇入太行 阅读(33) 评论(0) 推荐(0) 编辑