自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 字符串哈希

字符串哈希十进制数1234=1103+2102+3*10+4对于字符串”abcd”我们将它看做p进制的数,那么hash=’a’*p3+’b’*p2+’c’*p+’d’。但是如果字符串足够长的话,long long是存不下的,所以还需要取模。字符串哈希的两个问题1、任意字符不能等0。假设字符a=0,那么对于字符串a和aa的hash值都会等0,就会发生冲突。2、不同的字符串的hash值取模后可能会相等,就是发生冲突了。选择合理的p和mod可以降低冲突的概率,p一般取131、13331或者2333,mod

2020-08-11 09:35:42 78

原创 树状数组

放一个简单的板子记录一下int tr[N];int a[N];int n; int lowbit(int x){ return x&(-x);} void add(int x,int c) //x的位置+c{ for(int i=x;i<=n;i+=lowbit(i)) tr[i]+=c; } int sum(int x)//1~x的和{ int res=0; for(int i=x;i;i-=lowbit(i)) { res+=tr[i];

2020-07-28 10:39:57 24

原创 博弈论(2)

上篇博客简单的介绍了一些经典的博弈,这篇继续写一些博弈问题。移动棋子游戏这个是一个应用SG函数的板子题.#include <bits/stdc++.h>using namespace std;const int N=2010,M=6010;int n,m,k,a,b,x;vector<int> ve[N];int sg[N];int SG(int u){ if(sg[u]!=-1) return sg[u]; set<int&

2020-05-25 09:54:36 245

原创 Tarjan算法求强连通分量

dfu[u] 表示遍历到u的时间戳low[u] 从u走,所能遍历到最小的时间戳假如u是其所在的强连通分量的最高点,则dfu[u]==low[u]

2020-05-18 13:58:20 80 2

原创 Codeforces Round #634 (Div. 3)

A. Candies and Two Sisters姐姐和妹妹分n颗糖,姐姐必须比妹妹的少,问有几种情况,必须每人至少有一颗//答案:(n-1)/2B. Construct the String有n,a,b,长度是n的字符串,构造一个长度为n的字符串,每a个字符串,都有b个不同字母,输出其中一个。思路:直接按照(i%b+‘a’))构造就行#include <bits/stdc+...

2020-04-14 09:04:50 120 5

原创 Codeforces Round #630 (Div. 2)

D. Walk on MatrixD 他的错误dp是因为&过程中的最大值不一定能使后面的&操作最大要使最优解与他输出的差值为k,感觉两个值分别等 k和0是比较好构造吧,所以我的目的是使最优解为k,而dp输出0,假设点[n,m]位置为k,为方便构造减少分支情况就把所有情况都从一个方向来,就令[n-1,m]为0,这个方向一定为0。接下来就是使 dp[n][m-1]&k 等...

2020-04-01 20:15:21 133

原创 求组合数总结

Educational Codeforces Round 83 (Rated for Div. 2)的D题所用到的Lucas定理,小编看了多篇博文后总结了一下,他其实是求组合数的一种方法,求组合数总共有以下几种方法。1.当数据范围较小时,差不多1000左右,直接用递归打表求,这里用到原理就是从n个球取m个球,相当于(取第n个,然后从前n-1个再取m-1个 + 不取第n个,从前n-1个取m...

2020-03-11 15:29:52 52 1

原创 Educational Codeforces Round 83 (Rated for Div. 2)

总体来说菜得很…D题有点思路但是实现不了。。。Two Regular Polygons#include<bits/stdc++.h>using namespace std;typedef long long ll;int t,n,m;int main(){ cin>>t; while(t--) { cin>>n>>m; i...

2020-03-10 20:20:58 51 1

原创 矩阵计算器+求线性代数n阶行列式代码

算的实在是心烦,上网找了一篇大佬的代码真的是牛逼,附:大佬博客#include <malloc.h>#include <stdio.h>#include <stdlib.h>//包含的头文件不解释#define bool int //因为标准c里边没有bool类型才这么做#define false 0#define true 1//定义...

2020-03-01 10:02:37 262

原创 Codeforces Round #622 (Div. 2)

C2. Skyscrapers (hard version)C c1和c2的题意是一样的,只是数据范围不同,已知一个数组m,让你构造一个数组a是的任意ai<=mi,而且任意j<i<k不能有aj>ai<ak(ijk不一定相邻)就是是这个数组是单峰的,在最高点两边是单调下降的。而且数组的和得最大我们需要假设以每个点是最高点来计算这时的数组的和取最大的情况,c1可以直...

2020-02-25 20:07:40 66

原创 计算机系统概论

唉,文章开头还是感谢那吃蝙蝠的人吧…感谢你让我记个笔记还得记在博客上…1.计算机硬件能直接执行的是:机器语言2.在计算机系统层次结构中,微程序属于硬件3.寄存器的数据位对微程序级用户不是透明4.软件与硬件具有逻辑功能等价性5.计算机的字长与运算精确度有关6.CPU地址线数量与内存容量密切相关7.低层用户对硬件的透明度比高层用户低8.不同层次的面对不同用户,看到的计算机属性不同9....

2020-02-23 15:07:18 2867 6

原创 欧拉函数+欧拉定理

Visible Lattice Points 写这篇博客是因为上面那个题,人家是欧拉函数,看我这贪心一下午…定义:欧拉函数是小于x的整数中与x互质的数的个数,一般用φ(x)表示。例如φ(6)=2.特殊的,φ(1)=1。求法:φ(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…(1-1/pn),其中p1,p2……pn为x的所有质因数,x是不为0的整数.证明:容斥原理...

2020-02-19 15:30:47 148

原创 Codeforces Round #620 (Div. 2)

心态崩了丫…一个小时A出ABC,然后就WA了一小时的D…A. Two Rabbits#include <bits/stdc++.h>using namespace std;typedef long long ll;typedef pair<int,int> pii;const int N=1e6+10; vector<pair<int,strin...

2020-02-15 23:14:07 215

原创 Codeforces Round #619 (Div. 2)(A~D)

A. Three Strings#include<bits/stdc++.h>using namespace std;const int N=100010;int main(){ string a,b,c; int t; cin>>t; while(t--) { cin>>a>>b>>c; bool flag=...

2020-02-14 11:02:43 309

原创 素数,分解质因数, 约数,扩展欧几里得

//判断一个数是不是素数bool is_prime(int n){ if(n<2) return false; for(int i=2;i<=n/i;i++) { if(n%i==0) return false; } return true;}//判断一堆数是不是素数int prim[N]; ...

2020-02-13 22:33:26 272

原创 Educational Codeforces Round 82 (Rated for Div. 2)(A~D)

唉,有点可惜,感觉D题能做出来,可惜时间有点不够了…先写三个题的题解吧,剩下的慢慢补。A. Erasing ZeroesA就没什么好说的了,统计出最左和最右的位置看一下中间有多少0就行。#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=100010,mod=1e9+...

2020-02-13 10:09:50 2372 5

原创 动态规划(7)-------树形DP

昨天本来就能写的,结果写了俩个题写了四五个小时,于是乎拖到今天了。没有上司的舞会这个题就很好写了,不像状态压缩,真的是难理解…大佬博客f[u][0]表示从以U为根节点,不选u的方案。f[u][1]表示从以U为根节点,选u的方案。所以f[u][0]=求和max(f[si][0],f[si][1])i是遍历下一层的子节点f[u][0]=求和f[si][0] i是遍历下一层的子节点#i...

2020-02-12 15:08:18 185

原创 Codeforces Round #618 (Div. 2)(A~E)

再写题解前,首先得感谢一波AtCode的出题人成功浪费我一上午时间…最后还是不会(Almost Everywhere Zero),感谢哪位大佬赐教…AB就没有没有什么可说的了,看完题直接写就行!A. Non-zero#include<bits/stdc++.h>using namespace std;typedef long long ll;const int mod=1e...

2020-02-10 18:48:21 270

原创 感谢那些分享的人

真的是感动,今天翻到一些博客,写的是真的好,真的是感谢!!!顺便我也在此记录顺便为大家分享一波。2020 我把大学四年ACM模板分享了出来【总结】 ACMer一定要来看!【ACM刷题专题】这个假期一起来刷题把,刷完冲击区域赛,刷完拿不到奖随便打!...

2020-02-08 15:38:16 230

原创 动态规划(6)-------状态压缩DP

蒙德里安的梦想

2020-02-07 21:25:51 76

原创 动态规划(5)-------数位统计DP

真的是羡慕那些高智商的人,看了好多博客才有一丝丝的感觉。老规矩,还是看y总的网站,感觉里面有的的题解写的真的是nice!计数问题虽然暴力也能做,但是这个数据范围太大了…所以直接放弃暴力…...

2020-02-07 21:23:53 107

原创 动态规划(4)-------计数类DP

整数划分其实小编看到这个题的第一个想法是完全背包…写了个二十分钟还真的A了。大家如果想了解,下面给出代码,具体的解释看动态规划(1)的完全背包就行。这里先给写计数类DP,毕竟这个才是今天的主角。...

2020-02-06 18:24:12 67 2

原创 Codeforces Round #617 (Div. 3)(A~E2)

真个人生都是灰色了,大早上的让hack一道题…A. Array with Odd Sum水题,直接看代码吧。#include<iostream>using namespace std;const int N = 2500;int a[N];int t,n;int main(){ cin>>t; while(t--) { cin>&...

2020-02-05 14:20:59 78

原创 Codeforces Round #616 (Div. 2)

本来打算写区间DP的,结果一想到昨天晚上的CF…还是先补一下题,安慰一下自己受伤的心灵…A. Even But Not Even感觉也就A题友善…题意:一串数字,去掉几个数字,让这个串不能被2整除但是各个位的和可以被2整除。思路也简单直接看代码吧…#include<bits/stdc++.h>using namespace std;typedef long long ll...

2020-02-03 12:17:17 63 2

原创 动态规划(3)-------区间DP

补了俩天,总算把线性DP写了一半,剩下的等抽个时间慢慢写。区间dp就是在区间上进行动态规划,求解一段区间上的最优解。主要是通过合并小区间的 最优解进而得出整个大区间上最优解的dp算法。(个人觉得所有的DP都是很美的暴力枚举…)...

2020-02-03 11:54:37 66

原创 Educational Codeforces Round 81 (Rated for Div. 2)

由于智商的原因,做题的时候的体验感真的超差…A. Display The Number思路:就是看看里面n有多少个2,然后最后判断n%2的值,如果是0就输出n/2个1,如果是1就输出1个7和n/2-1个1。#include<iostream>using namespace std; int main(){ int t,n; cin>>t; for(int...

2020-01-30 12:47:08 51 2

原创 动态规划(2)------- 线性DP

上篇讲了背包问题算小小的入个门,这篇为大家浅谈一下线性DP的一些板子题,帮助大家理解一下动态规划。板子传送门要找到整个数字三角形的最大值,我们可以描述为去找从三角形第一行第一列(a[1][1])到三角形最后一行第?列(a[n][j]),这里用问号表示我们不知道最大值具体在哪里。我们以从第一行第一列走到第i行第j列来为例,能够走到 a[i][j] 的位置只有上面 a[i-1][j] 和左上角a...

2020-01-27 20:48:17 94

原创 动态规划(1)-------浅谈四种背包

在让CF的动态规划折磨了小半年后,借着这个寒假,决定重新学习动态规划,这篇博客就给大家介绍一些简单的而且比较经典的入门动态规划问题——背包问题。 背包有九讲,这里我为大家浅谈四讲。01背包完全背包多重背包分组背包...

2020-01-27 09:10:29 110

原创 Codeforces Round #615 (Div. 3)

怎么说呢,总之Div3还是蛮有意思的吧!Collecting Coins#include<bits/stdc++.h>using namespace std;typedef long long ll;int main(){ ios::sync_with_stdio(false); cin.tie(0);cout.tie(0); int T;cin&g...

2020-01-23 16:07:07 57

原创 双向队列(dequeue)的基本操作

基本操作如下,前面加一个【名称.操作】,eg:deq.pop_back();

2020-01-16 21:44:32 335

原创 Dev c++使用时不兼容win10 64位系统的解决办法

您的电脑是否也莫名其妙的出现过以下问题?上网百度一大堆,插件下载一大堆发现也解决不了!!!希望这篇博客能帮到您…解决方法:1.把您最近下载的软件删了…特别是腾讯手游助手(小编就是把这个删了,然后重启电脑就ok了)…2.下载360安全卫士(虽然感觉他像个毒瘤,小编也不用),然后点击系统修复,里面也有可能出现系统变量怎么怎么滴,反正全部修复就ok…3.如果还是解决不了,那就爱莫能助了…解...

2019-12-17 16:14:13 14287 9

原创 桶排序

直接给一个能排正负数的板子#include<iostream>using namespace std;int main() { int book[100] = {0};//标志位,标记桶内正数数据量 int bookN[100] = { 0 };//标志负位 int input[11]; int heap[100] = {0};//初始化堆,排序0到100之间的数,hea...

2019-12-08 11:06:30 58

原创 ACM输入输出挂

写这篇博客不为什么,就是是为了纪念一下我复杂得心情!!!

2019-12-07 18:48:49 75

原创 personal-training 2

Kefa and ParkComplete TripartiteShortest CycleAlex and a RhombusNick and ArrayValeriy and DequeCircle MetroPairsIncreasing by Modulo特别神奇的二分…真的是想不到…果然菜是万恶之源啊!!!#include<bits/stdc++.h>u...

2019-11-28 22:46:54 47

原创 大数的加减乘除

加法:#include<iostream>#include<vector>using namespace std;vector<int> add(vector<int> &A,vector<int> &B) if(A.size()<B.size()) return add(B,A); vect...

2019-11-19 22:00:03 57

原创 personal training

EnginesConsecutive Integers AtCoder - 5037ModSum AtCoder - 4873Shortest Path on a Line AtCoder - 5635 Counting of Trees AtCoder - 5633 Monsters Battle Royale AtCoder - 4297Powerful Discount Ti...

2019-11-19 12:47:41 71 2

原创 CodeForces #575 div3

A. Three Piles of CandiesB. Odd Sum SegmentsC. Robot BreakoutD1. RGB Substring (easy version)D2. RGB Substring (hard version)E. Connected Component on a ChessboardF. K-th Path

2019-11-15 17:45:26 68

原创 2019CCPC-江西省赛(重现赛)- 感谢南昌大学

先来简单地说一这套题我的收获:1.再也不想使用cin和cout了,D题当时关闭同流后,用的cin,结果还是超时,下来后把cin换成scanf后,A了。所以就是还是scanf和printf好用,虽然敲的麻烦但是好用!2.最近一段时间得好好学习DP,这套题不暴力就DP…阔是我的DP学的是真的差3.强制类型转换有精度损失A–CotreeB–MathC - Trap D - Wave E ...

2019-11-11 22:41:58 102 1

原创 博弈论(1)

博弈

2019-10-22 15:15:08 73

原创 Dev代码补全

Dev代码补全估计好多人都和我一样,为了编程方便使用Dev,但是更新的5.11后,像定义一个容器啊,或者是printf了,就得自己全部输进去,根本不给后面的自动补全内容。在这里为大家解决一下这个问题。DEV其实支持代码补全,只是因为缺省的快捷键是Ctrl+Space,神奇的要命,和切换输入法快捷键完完全全冲突。解决方法:打开工具 -> 快捷键选项 ->Show code comp...

2019-10-15 19:13:27 5022 1

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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