自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Free Loop~~~跳动的音符

开荒~刷题~重新起航~追寻梦想~永不放弃~~~

原创 Python 程序设计快速入门简易教程

Python 程序设计快速入门简易教程Python语言快速检索一些需要知道的事一个简单的Python程序Python的基本数据类型Python的基本运算符Python的常用函数// import 库的用法分支语句循环结构字符串列表的使用元组自定义函数使用库编程Thanks for reading...Python语言快速检索Python的语法简洁,实用,假设你已有C++程序设计基础,接下来跟着我走,瞬间学会Python语言,对于信息学竞赛的学生可以用Python出随机数据是非常方便的,如果感兴趣,还可以

2020-06-03 17:20:56 207

原创 Linux compare shell

for i in $(seq 1 100000);do ./gen ./sol ./bf if diff tmp.out tmpb.out ;then echo $i "AC ~ HAHAHA ~" else echo $i "WA ~ WA ~" exit 0 fidone

2016-11-17 22:00:08 1464 4

原创 Ubuntu里VIM的基本配置运行

sudo gedit /etc/vim/vimrc 打开配置文件,在最后面输入如下文字,保存:set nu    //显示行号set tabstop=4    //设置TAB为4格set autoindent    //设置自动缩进set cursorline     //凸出显示该行set cursorcolumn    //凸出显示该列color blue

2016-11-10 15:59:28 2982

原创 信息学竞赛中的各种低级错误,持续更新中~~~,各位同学来跟帖!!

1、写错文件名,包括程序文件名,输入输出wen2、

2014-11-11 17:51:21 5289 35

转载 求树的直径

树的直径,即树上的最长路径,显然,树的直径可以有很多条(考虑一棵菊花)。接下来我们考虑如何求出一棵树的直径。有很多种O(n)的算法。算法1:我们任取树中的一个节点x,找出距离它最远的点y,那么点y就是这棵树中一条直径的一个端点。我们再从y出发,找出距离y最远的点就找到了一条直径。这个算法依赖于一个性质:对于树中的任一个点,距离它最远的点一定是树上一条直径的一个端点。下面给出证明。考虑这样...

2018-12-29 14:49:22 292

原创 POJ1655 树的重心

#include<iostream>#include<cstdio>#include<vector>using namespace std;const int maxn=50000+5,inf=100000000;int sum[maxn];vector <int&am

2018-12-29 14:31:11 124

原创 数据结构之栈的使用

数据结构之栈的使用数制转换括号匹配检验后缀表达式表达式求值 & 中缀表达式转后缀表达式递归 & 深度优先搜索由于栈结构具有后进先出的固有特性,致使栈称为程序设计中的有用工具。数制转换括号匹配检验后缀表达式表达式求值 & 中缀表达式转后缀表达式递归 & 深度优先搜索...

2018-12-16 18:32:34 208 2

原创 C++STL系列 队列的使用

/*queue的成员函数 empty 测试容器是否为空,为空时返回true size 返回容器的大小 front 返回队列的第一个元素,即最早被压进队列的元素//队首 back 返回队列的最后一个元素,即最晚被压进队列的元素//队尾 push 把元素添加至队列尾 pop 弹出队列首元素*/#includeusing namespace std

2017-09-26 09:30:44 2776

原创 C++STL系列 结构体运算符重载及优先队列的使用

#includeusing namespace std;struct node{ int x,y; bool operator <(const node b)const{ return this->x>b.x; }};priority_queue q;int main(){ int i,j,k,m,n; cin>>n; for(i=1;i<=n;i++){ node

2017-09-26 09:03:06 852

原创 POJ 1463 TREE DP

#include#include#includeconst int maxn=6000+10;using namespace std;int to[maxn],beg[maxn],nex[maxn],e;int fa[maxn],f[maxn][2],p[maxn];void dfs(int x){ p[x]=1; for(int i=beg[x];i;i=nex[i]){

2017-09-03 21:47:19 321

原创 POJ 2342 Anniversary party ~~Tree Dp

/*【题意】公司有n个人,每个人有价值vi,有一天举办年会,每个人都可以参加,但有严格的等级制度,参加活动时,不能同时出现a和a的上司,问如何才能使总和最大。【分析】每个人只有去和不去两种状态,设f[i][0]和f[i][1]分别表示第i个人不参加和参加年会,获得的总的最大价值。则状态转移方程为:f[i][1] += f[j][0],f[i][0] += max{f[j][0],f[

2017-09-03 09:54:24 346

原创 USACO1.1 贪婪的送礼者+MAP+VECTOR使用

#include#include#include#include#include#include#include#includeconst int maxn=1000000+10;using namespace std;vectors;mapsen,rec;int main(){ int i,j,k,m,n; cin>>n; for(i=1;i<=n;i++){

2017-08-15 10:49:57 420

原创 spfa+vector

#include#include#include#include#include#include#includeconst int maxn=10000+10,inf=1000000000;using namespace std;struct node{int to,z;};int p[maxn],d[maxn];vectore[maxn];int q[maxn*100];

2017-08-15 10:02:52 599

原创 USACO FC,二维凸包

#include#include#include#includeconst int maxn=10000+10;using namespace std;struct node{double x,y;};node p[maxn],z[maxn];bool cmp(node u,node v){return u.x<v.x;}bool cmpxl(node a,node b,node

2017-08-14 11:28:50 264

原创 USACO RECT1 离散化处理

#include#include#includeconst int maxn=2002,maxm=10000+1;using namespace std;struct node{int x1,y1,x2,y2,c;}s[1001];short int a[maxn][maxn];int sjx[maxm],sjy[maxm],xnx[maxn],xny[maxn],cs[1000+5

2017-08-14 11:28:08 267

原创 矩阵快速幂

#include#include#includeconst int maxn=100+10;#define ll long longconst int b=1000000000+7;using namespace std;ll a[maxn][maxn],s[maxn][maxn],tmp[maxn][maxn];int main(){ int n;ll k; c

2017-08-05 15:47:25 339

原创 HDU1166树状数组

#include#include#include const int maxn=50000+10;using namespace std;int c[maxn],n;int lowbit(int x){return x & -x;}void add(int x,int y){ while(x<=n){ c[x]+=y; x+=lowbit(x); }}int cal(

2017-08-04 11:26:28 298

转载 hihoCoder1183 tarjan算法应用之割边和割点

#include#include#includeusing namespace std;int n,m,order=0;int low[20004],dfn[20004],father[20004],son[20004];//father:父结点 son:子结点个数 vector cutpoint,edge[20004];vector > cutedge;void tarjan

2017-07-10 12:41:50 269

原创 POJ2186 Popular Cows Kosaraju

题目大意是:在一个牧群中,有N个奶牛,给定M对关系(A,B)表示A仰慕B,而且仰慕关系有传递性,问被所有奶牛(除了自己)仰慕的奶牛个数因为仰慕关系具有传递性,因此在一个强连通分量中,每个奶牛都被分量中的其他奶牛膜拜,而且也膜拜着分量中的其他奶牛,这种互相膜拜的场景在现实生活中也是经常存在的,因此,本题可以将强连通分量缩点,并构造新图,最后做一次扫描,统计出度为0的点的个数,如果正好为1

2017-07-10 03:19:51 425

原创 单元最短路模板 dijistra

#include#include#include#includeconst int maxn=10000+10,inf=1000000000;using namespace std;struct node{int to,w;};int d[maxn],p[maxn];vector e[maxn];void add(int x,int y,int z){ node t; t.t

2017-07-10 02:23:27 462

原创 POJ-3660-Cow Contest FLOYD传递闭包

题目大意是说:给出牛之间的强弱关系,让你确定有多少头牛能够确定其排名。用Floyd做,对每给的一个胜负关系连一条边,最后跑一次Floyd,然后判断一头牛所确定的关系是否是n-1次,若是,则这头牛的排名可以确定#include#include#includeconst int maxn=100+10;using namespace std;int d[maxn][maxn],n,m

2017-07-10 01:23:06 252

原创 本人2011级学生TXH大佬写的超短的SAP网络流程序

/*ID:t-x.h1PROB:ditchLANG:C++*/#include#define min(a,b) ((a)<(b)?(a):(b))const int MAX=2100000000,MAXn=200+9;int n,answer,g[MAXn][MAXn],d[MAXn],gap[MAXn],st=1,ed=n;int sap(int u,int flow){

2017-06-27 21:41:02 469

原创 HDU1075静态数组实现字典树

#include#include#includeconst int maxn=1000000+10;using namespace std;struct node{ int count,next[30]; string word;}a[maxn];int e,flag;string sx;void insert(string hx,string yy){ int len=h

2017-06-23 14:19:07 374

转载 KMP样例程序

#include #include #include #define N 100void cal_next( char * str, int * next, int len ){ int i, j; next[0] = -1; for( i = 1; i < len; i++ ){ j = next[ i - 1 ]; while( str[ j + 1 ] != str

2017-06-22 10:40:58 255

原创 ZOJ1610【未完成】

以下代码是错的,仅用于存储而用#include#include#includeconst int maxn=8000+10;#define mid ((s+t)>>1) #define ls h<<1,s,mid #define rs h<<1|1,mid+1,t using namespace std;struct node{ int c,sc,tc;};node

2017-06-18 21:59:27 235

原创 HDU1698(线段树LAZY)

/* TASK:hdu1698 */ #include#includeconst int maxn=100000+10,maxm=100000+10;using namespace std;int a[maxn<<2],ans;void ts(int h,int s,int t,int L,int R,int ys){ if(L<=s && t<=R)a[h]=ys; else

2017-06-18 20:28:48 405

原创 线段填色(线段树LAZY)

/* title:线段填色 输入:n m x1 y1 x2 y2 .... xm ym 输出:1 xxx 3 xxx */ #include#includeconst int maxn=100000+10,maxm=100000+10;using namespace std;int a[maxn<<2],c[maxm];void ini

2017-06-18 20:05:19 599

转载 KM最容易看懂的教程和参考程序

KM最容易看懂的教程和参考程序,分别参考段文弱和心若为城的博客

2017-06-15 16:05:44 433

原创 TREAP示例代码(排序)

最近手打一遍AC代码~~~

2017-06-11 21:33:50 309

原创 HDU1698 Just a Hook--线段树LAZY操作

线段树LAZY操作

2017-06-08 11:00:03 351

原创 线段树入门三道题

线段树入门三水题

2017-06-07 16:09:34 1032

原创 【合并果子】的两种方法

哈夫曼树+堆#include#includeconst int maxn=10000+10;using namespace std;int a[maxn];int main(){ int i,j,k,m,n,ans=0; cin>>n; for(i=1;i<=n;i++){ scanf("%d",&a[i]); k=i; while(k>1 && a[k]<a[k/

2017-06-04 21:51:25 1040

原创 [USACO5.3]校园网Network of Schools 强连通分量

#include #include using namespace std;const int MAXN = 100+5;int g[MAXN][MAXN], dfn[MAXN], num[MAXN] , a[MAXN][MAXN], n, m, scc, cnt;int rd[MAXN],cd[MAXN];void dfs(int k){ num[k] = 1; f

2017-05-17 15:46:36 376

转载 强联通分量的KOSARAJU算法

转自NOCOW#include using namespace std;const int MAXV = 1024;int g[MAXV][MAXV], dfn[MAXV], num[MAXV], n, m, scc, cnt;void dfs(int k){ num[k] = 1; for(int i=1; i<=n; i++) if(g[k][i]

2017-05-17 15:20:12 245

原创 猴子选大王改编;关于环形链表的建立,删除,插入操作演示

#includeusing namespace std;struct node{ int x; struct node *next,*pre; node(){ x=0;next=NULL;pre=NULL; }};node *h,*p,*q;int main(){ int i,j,k,m,n,c; cin>>n>>m>>c; h=new node; h-

2017-01-17 21:28:43 309

原创 USACO5.1凸包参考代码

#include#include#include#includeusing namespace std;const int maxn=10000+5;struct node{ double x,y;}a[maxn];int stack[maxn],top;bool cmp(node p,node q){return p.x<q.x;}double dist(int u,int

2017-01-17 20:34:32 301

转载 什么是时间复杂度,什么是P问题、NP问题和NPC问题

转自MATRIX67大神博客,膜拜http://www.matrix67.com 这或许是众多OIer最大的误区之一。    你会经常看到网上出现“这怎么做,这不是NP问题吗”、“这个只有搜了,这已经被证明是NP问题了”之类的话。你要知道,大多数人此时所说的NP问题其实都是指的NPC问题。他们没有搞清楚NP问题和NPC问题的概念。NP问题并不是那种“只有搜才行”的问题,NPC问题才是。好,

2016-10-19 20:55:50 694

转载 POJ1273网络流

//Edmonds_Karp#include#includeusing namespace std;const int N=201;const int INF=99999999;int n,m,sum,s,t;//s,t为始点和终点int flow[N][N],cap[N][N],a[N],p[N];//分别为:flow[u][v]为流量、cap[u][v]为容量、a[i]表示源

2016-10-10 21:35:03 378

原创 【黑科技】C++输入输出优化技巧

今天下午经过试验(GUOAK,EGG,TYX,WEATAO等人围观),得出以下输入输出优化结论;对于一个文件里有10000000个数字,大小约为38M的文本文件;输入测试:1、用scanf()方式读入需要5.01秒2、用以下方式读入则只需要1.139秒#include#includeusing namespace std;void read(int &x){ x=0

2016-10-07 16:44:14 6090 13

原创 luogu1396 二分答案或者并查集水题

有m条大道连接n个区,一条大道将两个区相连接,每个大道有一个拥挤度。小明的妈妈虽然很着急,但是不愿意拥挤的人潮冲乱了她优雅的步伐。所以请你帮她规划一条从s至t的路线,使得经过道路的拥挤度最大值最小。#include#include#includeconst int maxn=50000+10;using namespace std;int to[maxn],next[maxn],be

2016-10-07 15:45:25 431

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