自定义博客皮肤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)
  • 收藏
  • 关注

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-07-16 19:55:48 205

原创 1796 社交网络[最短路条数]

时间限制: 1 s 空间限制: 128000 KB 题目等级 : 大师 Master 2007年NOI全国竞赛题目描述 Description在社交网络(social network)的研究中,我们常常使用图论概念去解释一些 社会现象。 不妨看这样的一个问题。在一个社交圈子里有 n 个人,人与人之间有不同程 度的关系。我们将这个关系网络对应到一个 n 个结点的无向图上,两个不同的人 若

2016-11-12 16:52:09 407

原创 LCA ST

ST算法:预处理每个节点的深度预处理pow[i]=2^i;算法是分两步的1.x,y走到同一深度。2.x,y要走到同一个点。预处理一个f数组f[i][j]表示i点向上走2^j步到达的点是谁for (int i=1;i<=n;i++) f[i][0]=pa[i];for (int j=1;j<=20;j++) for (int i=1;i<=n;i++) f[i][j

2016-11-10 20:48:50 300

原创 由 USACO2003 Popular Cows[受欢迎的奶牛] 认识 Tarjan 求强连通分量并缩点

给定N(N<=10000)个点和M(M<=50000)条边(注意:是有向边),求有多少个受欢迎的点,当且仅当任何一个点出发都能到达它。这道题可能会有环->缩环成点无环的情况: 1:若有向无环图是连通的,只有出度为0的点才是“受欢迎的点”。2:若有向无环图是连通的,当存在大于1个出度为0的点,则图中没有“受欢迎的点”。寻找出度为0的点,如果不止一个,就没有答案,否则就是该点//usaco

2016-11-07 16:59:15 523

原创 1217 借教室 2012年NOIP全国联赛提高组[迷之不能自拔]

#include<iostream>#include<algorithm>#include<cstring>#include<string>#include<cstdio> using namespace std;const int MN=1000006; long long a[MN],num[MN],x[MN],y[MN],sum,ans,s[MN],n,m;long long

2016-11-03 21:20:15 232

原创 HASH

struct Hash_map{ static const int mask=0x7fffff; int p[mask+1],q[mask+1]; void clear() { memset(q,0,sizeof(q)); } int& operator [](int k) { int i; f

2016-11-01 15:57:40 496

转载 取整

include

2016-10-31 19:37:58 150

转载 String

#include <string>#include <iostream>using namespace std;int main(){ string strinfo=" //*---Hello Word!......------"; string strset="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";

2016-10-31 14:33:26 246

转载 考前十点提醒

考前十点提醒一、一定要想好了算法,思路清晰了再编。分析问题时遇到一些即兴问起的情况,马上要深入下去,看已有的算法思路是否有问题。经验证明,这种即兴提起的问题往往是决定算法正误的关键问题。这是一种本能的质疑,本能的差错,一定不要想:我一会再来看这个问题。一定要立即想清楚,看算法怎么样处理才能解决这样一个问题。确认算法没有什么错误了再编。如果思路没清晰,算法不对,编到一半时才发现错了,这种情况没有考虑到

2016-10-31 14:20:57 242

转载 探寻C++最快的读取文件的方案

探寻C++最快的读取文件的方案

2016-10-31 13:58:35 435

原创 2204 母舰[经典贪心]

2204 母舰 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 黄金 Gold 题目描述 Description在小A的星际大战游戏中,一艘强力的母舰往往决定了一场战争的胜负。一艘母舰的攻击力是普通的MA(Mobile Armor)无法比较的。 对于一艘母舰而言,它是由若干个攻击系统和若干个防御系统组成的。两艘母舰对决时,一艘母舰会选择用不同的攻击系统去攻击对面母舰的防御

2016-10-30 19:02:23 351

转载 我围观了一场机器人的入室盗窃案件[文]

我围观了一场机器人的入室盗窃案件 来自:geekpark 1天前 |在新窗口阅读原文阅读原文微信公众号:极客公园 (ID: geekpark)文 | lydiaxin尽管已经在各类科幻片中看到机器人的「叛逆行为」,但当我身处在「案发现场」时,还是被震惊到了。一个简陋机器人从快递包裹中破门而出,顺势沿着升降带滑落下来,它打开头部的手电筒,穿过办公室的隔离墙,「走」到电脑主机面前,开机,把自带的 U

2016-10-30 16:53:09 315

转载 STL标准库中的算法函数

STL标准库中的算法函数

2016-10-29 16:36:23 206

原创 STL—transform

#include<algorithm>#include<iostream>#include<cctype>//toupperusing namespace std;//transform(数据起始,结束,写入目标的起始,执行的操作)//遍历一个容器里面元素 然后执行一个操作int f(char c){ return c+1; } int main(){ string s

2016-10-28 16:43:42 214

原创 STL—stable_partition

#include<algorithm>#include<iostream>using namespace std;int f(char c){ return c>'c'; } int main(){ string s="abcdeedcba"; char c=*(stable_partition(s.begin(),s.end(),f)-1); cout<<s<<

2016-10-28 16:24:29 249

原创 我读《骗分导论》

KISS——Keep It Simple, Stupid在 写 代 码 之 前 先 写 注 释尽量不要使用浮点数;如果你不得不使用,在所有使用的地方设置允许的误差(绝对不要测试两个浮点数相等)注释要好像是写给某个了解该问题但并不了解程序代码的聪明人看的对任何你不得不考虑的东西加以注释在任何你看到了以后会问“他到底干什么用”的地方加注释(Anything you looked at

2016-10-27 16:33:27 2677

原创 欧拉回路

模板

2016-10-27 12:05:55 303

原创 2488 绿豆蛙的归宿[难以自拔]

2488 绿豆蛙的归宿 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 黄金 Gold 题目描述 Description   随着新版百度空间的上线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。   给出一个有向无环图,起点为1终点为N,每条边都有一个长度,并且从起点出发能够到达所有的点,所有的点也都能够到达终点。绿豆蛙从起点出发,走向终点。

2016-10-27 09:28:58 274

转载 [技巧]枚举子集的飘逸写法

设S表示一个01状态集,那么它的所有非空子集x可以通过以下代码枚举。for (int x = S; x; x = (x-1)&S)简单说明下原理(证明以后补上?):x = (x-1)&S实际上是把S中的0全部忽略,并不断减1的结果,比如S=1011,则x分别为:1011, 1010, 1001, 1000, 0011, 0010, 0001。忽略S中第二位的0其实就是111, 110, 101, 1

2016-10-27 08:02:21 313

原创 2596 售货员的难题[状态压缩&&优先队列]

2596 售货员的难题时间限制: 1 s空间限制: 32000 KB题目等级 : 钻石 Diamond题目描述 Description 某乡有n个村庄(1< n<=15),有一个售货员,他要到各个村庄去售货,各村庄之间的路程s(0< s<1000)是已知的,且A村到B村与B村到A村的路大多不同。为了提高效率,他从商店出发到每个村庄一次,然后返回商店所在的村,假设商店所在的村庄为1,他不知

2016-10-19 20:40:45 273

原创 读入优化

inline int Read() { int x=0;char y; do y=getchar(); while (y<'0'||y>'9'); do x=x*10+y-'0',y=getchar(); while (y>='0'&&y<='9'); return x; }

2016-10-19 09:26:45 184

原创 二维前缀和

for (int i = 1; i <= n; i++) for (int j = 1; j <= m; j++) { h[i][j] = Read(); sum[i][j] = sum[i - 1][j] + sum[i][j - 1] - sum[i - 1][j - 1] + h[i][j]; }//二维前缀和

2016-10-19 09:25:16 310

原创 2039 骑马修栅栏 USACO[图论—欧拉路]

#include<iostream>#include<cstdio>#include<algorithm>#include<vector>using namespace std;const int MN=512;struct edge{ int u,v,w;}k;//vector<edge>t[MN];int m,n;int t[MN][MN],way[MN],d[MN],

2016-10-19 09:05:56 347

原创 随机+文件流[乱搞]

#include<iostream>#include<cstdio>#include<fstream>#include<algorithm>#include<cstdlib>#include<cmath>#include<cstring>#include<ctime>using namespace std;int n,a1,a2,ans;int sum,mi=10000000,

2016-10-18 14:17:43 193

原创 1959 拔河比赛[DP][随机化贪心※]

可达性DP#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int n,k;int a[12341],sum,mi=10000000;bool f[112][46000]; int main(){ cin>>n; for(int i=1;i<=n;i++){

2016-10-18 13:52:51 460

原创 并查集—1001 舒适的路线题解

调试大法好!#include<iostream>#include<algorithm>#include<cmath>using namespace std;int n,m,f[600],k1,k2; struct edge{ int u,v; double w;}e[6000]; bool operator <(edge a,edge b){ return

2016-10-17 20:17:35 461

原创 STL——Vector Test

一個很典型使用vector的STL程式:

2016-10-17 09:34:59 489

原创 STL-Set

适用于:多少种不同的方案

2016-10-16 18:07:06 380

原创 2278 音量调节 2012年省队选拔赛河南

可达性DP if的使用!#include<cstdio>#include<iostream>#include<algorithm>#include<cstring>using namespace std;int a[100],n,bg,ed;bool b[100][1234];int main(){ cin>>n>>bg>>ed; for(int i=1;i<=n;i

2016-10-16 09:17:22 205

原创 1384 黑色星期五 USACO

优先级!#include<iostream>#include<cstdio>#include<cstring>using namespace std;int n,wk[10],m=2;int main(){ cin>>n; int d[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; for(int i=1900;i<19

2016-10-15 17:04:50 331

原创 DP-背包

初始化的细节问题 我们看到的求最优解的背包问题题目中,事实上有两种不太相同的问法。有的题目 要求“恰好装满背包”时的最优解,有的题目则并没有要求必须把背包装满。一种区别这两种问法的实现方法是在初始化的时候有所不同。 如果是第一种问法,要求恰好装满背包,那么在初始化时除了 F[0] 为 0 ,其它 F[1..V ] 均设为 −∞ ,这样就可以保证最终得到的 F[V ] 是一种恰好装满背包的最优

2016-10-14 11:34:11 228

原创 Hawstein's Blog (OI相关转载)

C/C++字符串处理 January 2, 2013 作者:Hawstein 出处:http://hawstein.com/posts/c-and-cpp-string.html树状数组(Binary Indexed Trees) November 15, 2012 作者:Hawstein 出处:http://hawstein.com/posts/binary-indexed-trees

2016-10-13 12:18:10 294

原创 Hanoi Tower

汉诺塔游戏Codevs 4835 [递归]汉诺塔基本版输出最少步数找规律数学推导int ans=1,n;int main(){ cin>>n; ans<<=n; cout<<ans-1;}Codevs 4412 汉诺塔输出最少步骤异或比较巧妙int n;void dfs(int k,int x,int y){ if(k==1){ if(x==1)

2016-10-12 21:36:44 325

原创 高精度

#include<iostream>#include<cstdio>#include<cmath>using namespace std;string x,y;int a[600];int b[600];struct G{ int a[600],len; string s; bool b;//0 + 1 - }a1,a2,a3;G to_num(G k){

2016-10-12 16:56:25 235

转载 对信息学竞赛中调试方法的建议

转自CyanNode的博客信息学之于其他竞赛学科的不同,就在于需要通过写程序来表达自己的思维和想法。如何尽可能又快又好地调试程序,成了我们必须要思考的问题。相信很多同学都有过这样的经历:思考一个算法只花了半个小时,但是把这个算法写对却花了一天。。思考与实现的时间往往不成正比。下面是我结合自己的经验给出的一些小建议,仅供大家参考,如果有不太好的地方,也欢迎指正~关于调试有一个大前提,就是思考的方向一定

2016-10-11 19:52:26 384

转载 求逆元的一些方法总结

求逆元的一些方法总结

2016-10-06 10:55:44 416

原创 p3110 二叉堆练习3--排序

/*作者:QHY题目:p3110 二叉堆练习3*/#include<cstdio>#include<iostream>#include<cstring>#include<queue>using namespace std;struct node{ int l,r,n;};int x,y,n;priority_queue<int,vector<int>,greater<i

2016-09-25 12:17:59 240

原创 树——求先序排列

#include<cstdio>#include<iostream>#include<cstring>using namespace std;string zx,hx;void dfs(string a,string b){ int l=a.length(); char c=b[l-1]; cout<<c; int k=a.find(c);

2016-09-25 09:13:09 251

原创 树状数组

includeincludeusing namespace std;int c[100010],n,m;int query(int k){ int ans=0; for(int i=k;i>0;i-=i&(-i)) ans+=c[i]; return ans; } void up(int k,int v){ for(int i=k;i<=n

2016-09-24 17:11:03 142

原创 波兰表达式

前缀表达式即波兰式求值#include<stdio.h>#include<stdlib.h>double f(){ char a[10]; scanf("%s",a);//一次取一个运算数/运算符 switch(a[0])//其实就是简单的栈运算就可以解决了 { case '+': return f()+f();

2016-09-24 17:10:34 338

空空如也

空空如也

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

TA关注的人

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