随笔分类 - 笔记
摘要:A Even Substrings 直接看每一位是不是偶数就行 #include<bits/stdc++.h> using namespace std; int n; signed main() { ios::sync_with_stdio(false); cin.tie(0); cout.tie(
阅读全文
摘要:A Accumulation of Dominoes 特判一下m=1的情况就行 #include<bits/stdc++.h> #define int long long using namespace std; signed main(){ ios::sync_with_stdio(false);
阅读全文
摘要:A Distance 直接枚举C点x坐标暴力判断 #include<bits/stdc++.h> using namespace std; int xa,ya,xb,yb; signed main() { ios::sync_with_stdio(false); cin.tie(0); cout.t
阅读全文
摘要:A Many Equal Substrings 很容易想到要找border,一看数据范围n<=50,kmp,直接暴力找就行了 #include<bits/stdc++.h> using namespace std; int n,k; char s[55]; int maxid; signed mai
阅读全文
摘要:A Log Chopping 直接把每次总切割数算出来就行 #include<bits/stdc++.h> using namespace std; int t; signed main() { ios::sync_with_stdio(false); cin.tie(0); cout.tie(0)
阅读全文
摘要:A Jellyfish and Undertale 这个直接顺着选就好了,能过 #include<bits/stdc++.h> #define int long long using namespace std; const int maxn=105; int x[maxn]; int t; int
阅读全文
摘要:NOIP2021T2数列 真没想出来,看了题解才明白 考虑DP \(f[i][j][k][p]\)表示二进制下的前i位已经选了j个数,到第i位时有k个1,向下一位进位p 很显然利用刷表发更好转移 \(f[i+1][j+t][k+(t+p)mod2][t+p>>1]+=g[i][j][k][p]*C_
阅读全文
摘要:滑动窗口 这个是板子,没啥可说的 代码 #include<bits/stdc++.h> using namespace std; #define int long long const int maxn=1e7+5; int q1[maxn]; int q2[maxn]; int a[maxn];
阅读全文
摘要:路径求和 显然每个点被经过的次数等于它分成的两个子树叶子节点与大小的乘积 代码: #include<bits/stdc++.h> #define int long long using namespace std; int n,m; const int maxn=2e5+5; int dep[max
阅读全文
摘要:证明gcd(a,b)=gcd(b,a%b) 采用反证法 设gcd(a,b)=k 则设a=x1k,b=x2k a%b=a-b * (a/b),a/b * b可以看做x3倍的k,所以a%b与b仍然有k这个公因数 假设有一个k'为gcd(b,a%b) 则b为k'的倍数,同时a%b为k'倍数因为b * (a
阅读全文
摘要:维护时间复杂度 O(nlogn) 查询时间复杂度 O(logn) 优点:好写 主要就是用一个叫lowbit的东西来实现用一个树状的东西维护区间和等,其实只要记住修改的时候+=lowbit(x),查询的时候-=lowbit(x)就行了 1.[板子](https://www.luogu.com.cn/p
阅读全文
摘要:首先呢,最短路蒟蒻会的板子只有3个,且都为朴素版qwq 1.floyd(n^3) 就是个暴力转移的算法,注意k,i,j顺序如果不是k,i,j正确性会出问题 板子在这里 代码如下 #include<bits/stdc++.h> #define int long long using namespace
阅读全文
摘要:算法kruskal,这是我春季赛前突击的一个算法,当时我貌似并查集都不怎么会,还是现学的... 先说一下这个基础算法的思路吧,先把所有边按照边权排序,把每棵树当作一棵子树,如果他们在一棵字树内就不管它,因为我们他们之间已经连边了,如果不在一棵子树内,就将他们连 起来 板子题在这里 代码如下,码风非常
阅读全文
摘要:之前在集训时有道题一直没明白,今天在到处问后终于大概理解了 题意大概是这样的:有n个点,每个点都有权值,求第1个点的期望,显然,只有一个点时那它的期望就是1,而如果,再加入一个点,那么就考虑新加的点获胜的概率,显然为ai/ai+a1,则1号 点就会在新加的点后被选到,很显然就可以推出答案了。
阅读全文
摘要:题目链接:homo史诗 这道homo(bushi)史诗已经压了好久了,今天终于大概理解了,其实如果是总长度最小的话就是权值*长度,想一个贪心思路,很显然,权值最大的点放在上面很显然更优,而使最大的k进制串 最小显然使它尽量是满叉树就可以了,为了实现这个,只要添加零节点将其顶上去就可以了 那么如何实现
阅读全文

浙公网安备 33010602011771号