自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 读入输出挂

inline int read(){ char ch = getchar(); int x = 0, f = 1; while(ch < '0' || ch > '9') {if(ch == '-') f = -1; ch = getchar();} while('0' <= ch && ch <= '9') {x = x * 1...

2018-07-29 12:26:53 182

原创 2018多校第一场

1001:Maximum Multiple思路:根据题意,设,易推导出来,这样的取值范围就只有有限的3,3,3和2,4,4和2,3,6这三种取法,并且2,3,6是不如前两种取法,所以答案就是。代码:#include<bits/stdc++.h>using namespace std;int main(){ int t;scanf("%d",&t);...

2018-07-27 12:53:07 304

转载 平衡树模板-Splay

转载链接:https://blog.csdn.net/clove_unique/article/details/50630280首先声明:万分感谢gty大哥的帮助!这年头能找到简单易懂的数组版平衡树模板只能靠学长了!变量声明:f[i]表示i的父结点,ch[i][0]表示i的左儿子,ch[i][1]表示i的右儿子,key[i]表示i的关键字(即结点i代表的那个数字),...

2018-07-15 15:57:12 174

原创 あなたの蛙が帰っています 逆元+卡特兰数

逆元快速幂解法:inv(a) = a^(p-2) (mod p);#include<bits/stdc++.h>using namespace std;const int maxn=1e5+10;typedef long long LL;LL h[maxn],inv[maxn];LL mod=998244353;//求逆元void ex_gcd(LL a, LL b, ...

2018-03-19 16:44:42 352

原创 HDU4722_数位DP

#include<bits/stdc++.h>using namespace std;int a[22];long long dp[22][22];long long dfs(int len,int sum,bool shangxian){ if(len<=0)return sum==0; if(!shangxian && dp[len...

2018-03-17 18:39:57 144

原创 Codeforces 948D Perfect Security

01字典树#include<bits/stdc++.h>using namespace std;const int maxn=3e5+10;#define ll long longll a[maxn],b[maxn],sn,ans[maxn],siz,cnt[maxn*40][2];ll sum[maxn*40];inline void insert(ll x){ ...

2018-03-14 20:41:07 354

原创 BZOJ1026 数位DP

#include<bits/stdc++.h>using namespace std;int a[20];long long dp[20][20];long long dfs(int len,int last,bool shangxian){ int p; if(len<=0)return 1; if(!shangxian &&...

2018-03-14 20:05:57 120

原创 HDU6058-Kanade's sum

该题的标程是用链表实现的。思路:首先要确定一点,要求每个点的贡献,也就是说,该点成为第k大的区间个数。我们从小往大开始扫每个数的前面k个和后面k个(很明显都是比当前这个数大的),然后,当一个数是第k大的时候,前面有x个比它大的数,那么后面就有k-x-1个比它大的数。(换个方向想,就是将这若干数排序后,第k小)#includeusing namespace std;typedef long

2017-08-02 13:22:52 226

原创 快速幂取模

const int mod=1e9+7;long long modexp(long long a, long long b, int mod){ long long res=1; while(b>0) { a=a%mod;//(有时候n的值太大了会超出long long的储存,所以要先取余) if(b&1)//&位运算:判断二进制最后一位

2017-08-02 13:09:16 214

转载 深度理解链式前向星

转载自:http://blog.csdn.net/acdreamers/article/details/16902023相当不错的介绍,赞一个。我们首先来看一下什么是前向星.前向星是一种特殊的边集数组,我们把边集数组中的每一条边按照起点从小到大排序,如果起点相同就按照终点从小到大排序,并记录下以某个点为起点的所有边在数组中的起始位置和存储长度,那么前

2017-07-16 13:02:56 1684

原创 Codeforces828 C. String Reconstruction

这条题目据说是条思维题。。。一开始直接暴力strncpy结果tle了。算了,总结一下我看过的各种解法,正是长见识了。第一种是官方给出的题解方法:就是一开始sort,然后按顺序去放置字符串,一开始愣是没看懂啥意思,看了代码才理解。以下代码链接,看起来感觉存数据的时候贼暴力#include using namespace std;const int maxn = 1e6+100

2017-07-13 09:34:30 352

原创 HDU3746--KMP+最小循环节

最小循环节求法:定理:假设S的长度为len,则S存在最小循环节,循环节的长度L为len-next[len],子串为S[0…len-next[len]-1]。(1)如果len可以被len - next[len]整除,则表明字符串S可以完全由循环节循环组成,循环周期T=len/L。(2)如果不能,说明还需要再添加几个字母才能补全。需要补的个数是循环个数L-len%L=L-(len-L)

2017-06-08 20:53:07 281

原创 HDU2087--KMP模板题

中文题,不解释。注意:每次匹配成功要把j移动到0的位置。第一次做KMP的题目,看了半天依旧有点模糊。。。以后多练练吧代码:#include#includeusing namespace std;int next[100009],cnt,n,m;char a[100009],b[100009];void getnext(){ int i=0,j=-1;

2017-06-08 20:20:58 188

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除