自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

shaonianguai

一条大菜狗

  • 博客(68)
  • 资源 (5)
  • 收藏
  • 关注

原创 poj2689 Prime Distance 有难度 埃拉托斯尼斯筛法的运用

我承认这道很难(对我来说),搞脑子啊,搞了好久,数论刚开始没多久,还不是很强大,思路有点死,主要是我 天赋太差,太菜了,希望多做做有所改善开始解析:首先要将在 [ l,u]内的所有素数找出来,还好题目说了u-l 小于 1000 000,不然内存都得暴死了,最常用的方法就是筛法了,当然还有 传说中的 6*n+1 可惜我不会,开始假设所有范围内的数都是素数,然后讲所有素数的倍数(肯定不是素

2013-10-31 23:11:41 1195

原创 nefu109 云之遥--素数 埃拉托斯尼斯筛法的应用

转载一个例子:例子:MAXN = 30: 1  2  3  4  5  6  7  8  9 1011 12 13 14 15 16 17 18 19 2021 22 23 24 25 26 27 28 29 30----------------------------------从第一个素数2开始:    2  3  4  5  6  7  8  9 10

2013-10-31 21:06:36 1123

原创 nefu117 素数个数的位数 素数定理+位数公式

这道题目 看着很吓人,完全没法入手,后来才知道是个简单题,首先是 球位数,那肯定跟位数公式有关,再是素数,最后找了一下素数定理,先贴一下关于 素数定理的  资料素数定理定理定理描述素数的大致分布情况。素数的出现规律一直困惑著数学家。一个个地看,素数在正整数中的出现没有什么规律。可是总体地看,素数的个数竟然有规可循。对正实数x,定义π(x)为不大于x的素数个数。数学家找到

2013-10-31 16:00:11 981

原创 poj2142 The Balance 扩展欧几里德的应用 稍微还是有点难度的

题目意思一开始没理解,原来是 给你重为a,b,的砝码 求测出 重量为d的砝码,a,b砝码可以无限量使用开始时我列出来三个方程 :a*x+b*y=d;a*x-b*y=d;b*y-ax=d;傻眼了,可是我们知道 x,y前面的正负符号是不影响extgcd的使用的,比如poj1061 方程式是 px+qy=m,而 nefu84方程式是:px-qy=m;所以不影响 只是方法没

2013-10-30 23:47:31 841

原创 HDU2669 Romantic 扩展欧几里德 对我来说有陷阱

这道题对我来说有陷阱虽说是赤果果的扩展欧几里德,看样子基本攻还是不够哈,基本功夫一定要好,准备每天上那种洗脑课时分  多看看数论书,弥补一下 自己 狗一样的基础,这道题用到了一个性质:对于不定整数方程pa+qb=c,若 c mod Gcd(a, b)=0,则该方程存在整数解,否则不存在整数解。上面已经列出找一个整数解的方法,在找到p * a+q * b = Gcd(

2013-10-30 22:34:38 839

原创 HDU1576 A/B 扩展欧几里德简单题

本题很简单A%9973=n;那么n=A-A/9973*9973;设 A/B=X;代入方程n=B*X-A/9973*9973然后这个方程中的 A/9973不要去纠结它,A的值就当不知道,然后 方程可变成二元方程 B*X-9973*Y=n;这下符合 exgcd的基本式子了 求出 X, 由于 A/B=X,所以X=A/B,那么  X%9973  其实就是 (A*B)%9

2013-10-30 21:56:54 1002

原创 poj2115 Looooops 扩展欧几里德的应用

好开心又做出一道,看样子做数论一定要先看书,认认真真仔仔细细的看一下各种重要的性质 及其用途,然后第一次接触的题目 边想边看别人的怎么做的,这样做出第一道题目后,后面的题目就完全可以自己思考啦设要+t次,列出方程  c*t-p*2^k=b-a(p是一个正整数,这里的内存相当于一个长度为2^k的圆圈,满了就重来一圈)这样子就符合扩展欧几里德的方程基本式了  然后令  c*

2013-10-30 20:47:48 894

原创 NEFU84 五指山扩展欧几里德的应用

解析过程跟上一道很像,http://blog.csdn.net/u010682557/article/details/13612759设要跳t次,我们列出方程  d*t-np=y-x;(这里的p是一个正整数)然后开始利用扩展欧几里德来解,我自己写的那个不知道WA在哪里了,后来看了别人的,他们只是 求gcd的值的时候 另外写了个gcd的函数而已,而我顺便在扩展欧几里德时求出g

2013-10-29 22:41:43 1585

原创 poj1061 青蛙的约会 扩展欧几里德的应用

这个题解得改一下,开始接触数论,这道题目一开始是看了别人的思路做的,后来我又继续以这种方法去做题,发现很困难,学长告诉我先看书,把各种词的定义看懂了,再好好学习,我做了几道朴素的欧几里德,尽管是小学生一样的题目我还是坚持做了几道,然后 看了中国余数定理 跟 中国剩余定理 还有扩展欧几里德的定义以及介绍,这次 这个题目是我自己思考出来的,这个题解是写给自己看的  同时向大家共享,学长说 做数论 要不

2013-10-29 21:12:18 898

原创 数论小结 写的很好!!!赞一个

刚开始决定接触数论,因为这几年比赛中图论越来越少,想多做做数论,拓展一下思路,问学长,学长推荐了 这位大牛,这位大牛花了半年时间来接触数论,而且给的方向感很强,想把这篇文章留下来,以后 在它的引导下进行数论的学习,真心写的很好 ,大牛留下的福利 就转来留下来,好好利用转载自: http://hi.baidu.com/aekdycoin/item/ec528c969cf7a230336eebae

2013-10-28 19:43:45 1042

原创 poj2115 Looooops 扩展欧几里德

x=[ (B-A+2^k)%2^k ]/CC*X=(B-A+2^k)%2^k一开始 方程不知道咋办 后来 看到别人统一一下变量 顿时 愚蠢的我感觉清晰了一点点 令a=C, b=B-A, MOD=2^k;方程变成了 ax=(n+MOD)%MOD;看到某个大神贴的一张图片很给力 我也贴一下,顺便贴一下他的解析过程,很容易懂得,一开始学数论 不可能自己完全推出来 都是要看要做,做多了

2013-10-27 22:11:14 932

原创 poj2891 Strange Way to Express Integers 扩展欧几里德的应用

刚开始数论,还不知道中国余数定理这东西,后来看了看,本题 不互素(互质)所以不能直接套中国余数定理,要两两合并公式,看了网上很多题解,基础真心很差结果都没看懂,但是终于看到了一篇让我这么没资质的人懂了转一下 他的分析模不互素,不能直接用中国剩余定理,只能每次求2组方程,然后通过他们的lcm求出最后符合左右方程组的解。例如有下面2条同余方程 x ≡ 3 (mod 4),x ≡ 5 (

2013-10-27 20:13:50 794

原创 HDU3572 Task Schedule 网络流最大流

先参考了别人的思路 打了一遍,自己想写更快的一种 可是 刚开始接触 还不行,先按别人思路来敲敲,明天继续刷这道题目#include#include#include#include#include#include#include#include#include#include#include#include#include#define ll long l

2013-10-26 22:16:40 1082

转载 网络流模版

九野的博客,转载请注明出处 : http://blog.csdn.net/acmmmm/article/details/11199941Dinic非递归版:#define N 5000#define M 1505#define inf 536870912inline int Max(int a,int b){return a<b?b:a;}inline int M

2013-10-26 20:54:02 737

转载 网络流之 最大流模版

13 、最大流 13.1 SAP邻接 矩阵形式 /* * SAP算法(矩阵形式) * 结点编号从0开始 */ const int MAXN=1100;int maze[MAXN][MAXN];int gap[MAXN],dis[MAXN],pre[MAXN],cur[MAXN];int sap(int start,int end,int nodenum){ memset(cu

2013-10-26 19:27:38 787

原创 poj1061 青蛙的约会 扩展欧几里德

这道题目还是比较明显的,数据很大很大,用数论来解题大概能想得到转载一下别人的讲解,转自 http://hi.baidu.com/blackstar08/item/3818e3b3e0b5a9931846973c本题是很经典的扩展欧几里德的题目,做完本题对扩展欧几里德得就会有一个很清晰的认识了。要解决这个问题,我觉得有几点要比较清楚:1、怎样利用扩展欧几里德得求得一组

2013-10-25 22:10:53 770

原创 HDU1853 Cyclic Tour KM算法 模版题

这道题目就是个模版题目,求的是走完图中所有点的最短的路径长度,KM算法 是 最大权匹配,算的是最大权值,但是我们在建图的时候 把权值改为负的就可以了,这样进行KM算法 算出来的 是最大的负数,其实就是最小的正数,#include#include#include#include#include#include#include#include#include#incl

2013-10-25 20:10:51 945

原创 HDU2255 奔小康赚大钱 又是984ms 飘过汗啊 最大权匹配 KM算法模版题

最近跟984ms很有爱啊,再次以984ms飘过!!!这道题不可以说是模版题目,因为它就是个模版,简直就是一模一样的模版,做了这道题你就知道什么是模版,模版长什么样子了,我反正照着模版打的,打出来跟模版长得一样题目是中文的  不用解释了先贴一个模版想要快点的 自己改成个邻接表形式的就可以了#include #include #define N 1001#de

2013-10-24 22:13:42 985

原创 HDU1528 Card Game Cheater 二分匹配最大点覆盖问题

这道题目还是比较简单的  就是建图有些问题Adam和Eve打牌,Eve是能够可以看到Adam的牌,牌的顺序先看大小,如果大小一样,再看C,D,H(依次增大),每次出一张牌,大的算赢一次,求出Eve最多能赢多少次。#include#include#include#include#include#include#include#include#inclu

2013-10-24 20:37:46 980

转载 强联通模版 题目是HDU1269

#include #include #include #include using namespace std; #define MAXN 10010 #define MAXM 100010 struct Edge { int v, next; }edge[MAXM]; //边结点数组 int first[MAXN], stack[M

2013-10-24 19:56:54 814

原创 HDU2389 Rain on your Parade 二分匹配 Hopcroft-Carp的算法+模版

这道题目一开始用最常用的匈牙利算法就超时,后来网上查了一下,原来给忘了二分匹配中还有一个Hopcroft-Carp的算法,直接找了个模版套了一下,1A,好开心先讲一下题目的意思,第一行案例数,每个案例第一行 代表还有多少单位时间开始下雨,然后是 N个访客,接下来N行是 每个访客的位置(一维坐标平面内)和他的移动速度,接下来M行 代表雨伞数目,接下来M行表示各个雨伞的位置,问在下雨前 最

2013-10-24 19:14:15 1063

转载 二分图匹配(Hopcroft-Carp的算法) 模版

/**********************************************二分图匹配(Hopcroft-Carp的算法)。初始化:g[][]邻接矩阵调用:res=MaxMatch();  Nx,Ny要初始化!!!时间复杂大为 O(V^0.5 E)适用于数据较大的二分匹配 **************************************

2013-10-24 18:28:24 1053

原创 HDU3605 Escape 多重匹配

给出每个人适合住的星球信息和该星球能住多少人,第一行给出n m 代表有 n 个人 m 个星球,然后接下来n行每行m个数字 ,代表可以住到第 i 个星球,0代表不可以住到第 i 个星球,最后一行m个数表示第 i 个星球最多可以住多少个人,问是不是所有人都可以搬离地球,以前的匹配左集合 中一个点 对应右集合中的一个点,点只能使用一次,现在变成左集合中的一个点对应右集合中的多个点

2013-10-24 16:28:25 918

原创 HDU1845 Jimmy’s Assignment 984ms 飘过啊 汗死 二分匹配最大匹配数

984ms飘过,其实就是卡过去的,纯属看人品的 代码,使用了邻接表,更快点,这道题目 他的匹配点 是自己的,所以以前 那个标记 点是否被连过的数组 要设两个,一个表示左集中的点 一个在右集中的点,#include#include#include#include#include#include#include#include#include#include

2013-10-22 21:23:44 1094

原创 HDU2119 Matrix 很经典的做法 二分匹配最大匹配数

这道题目跟poj3041一模一样,没有任何区别, 因为一次可以消除某一整行 或者 某一整列的1,所以题目可以反过来想,最多有多少个 1 既不在同一行也不在同一列,这样就可以进行行列匹配,求最大匹配数即最多有多少个 1 既不在同一行也不在同一列, 做出后记得关注一下poj2226,那道题目可以转化为本道题目,那个方法很经典,同时也让我认识到了最小路径覆盖 的正确使用,印象很是深刻#i

2013-10-22 20:47:03 1003

原创 HDU2236 无题II 二分匹配+二分枚举

设vmin为矩阵中最小元素,设vmax为矩阵中最大元素,那么答案肯定在(0~vmax-vmin)之间,所以可以二分枚举差值,再在每一个差值里面枚举长度为这个差值的区间,若在该差值的区间内存在最大匹配数 更新二分区间的 right,否则更新left;这道题目做的时候一直超时,后来改改就不超时了,现在还不知道为什么呢,看来大家做法都是大差不差的,不过这道题目其实有一个很淫荡的做法,因为x,n的

2013-10-22 20:22:46 1047

原创 Uva11419 I AM SAM 我是山姆 二分匹配

这是白书上给出的题目,我去做了下,题意跟poj3041很像,给一个矩阵,再给出障碍物,一个子弹可以清除一整行或者一整列的障碍物,问最少 需要打几枪,同时把开枪的位置给输出来,分析:求打几枪 很简单,先做一下poj3041就知道了, 最少打几枪 反过来想 其实就是问 最多有几个点 不在同一个行也不在同一列上,至于开枪的位置,可以开两个数组,这里是行与列进行匹配,所以 行 在左集合

2013-10-22 15:05:03 2316

原创 poj2060 Taxi Cab Scheme 最小路径覆盖=顶点数-最大匹配数

题意,租车,有n个预约,然后给出时间,然后给出地点,地点在一个二维坐标平面内,会给你两个坐标,求所需车最少数量;分析:这道题目跟poj2594一样穿了个马甲,2594是需要用一个floyd来转化,这里呢,根据坐标可以算出路径长度从而得到所需时间,如果本次预约任务结束时还有另一个预约时间还没到的话,那么这两辆出租车可以接着去跑另一个任务,这样建图时就可以把两个预约连在一起,讲

2013-10-21 21:46:56 863

原创 poj1422 Air Raid 最小路径覆盖=顶点数-最大匹配数

这是一道最小路径覆盖的题目,做最小路径的题目会有一个拆点的操作出现,我这里的拆点操作顺带做好了,并不是很明显,poj3020就很清楚了;给个poj3020的博客,拆点操作写的很详细 http://blog.csdn.net/lyy289065406/article/details/6647040,这里的拆点操作讲的很好的,大神嘛就是不一样接下来给一个 链接 是这道题目也就是po

2013-10-21 20:57:32 984

原创 poj2594 Treasure Exploration 最小路径覆盖=顶点数-最大匹配数

这道题走过的点可以重复走,这样不符合二分匹配,可是我们可以转化,最简单的就是使用floyd,比如说 1->2->3,2号点已经走过了,我们可以赋予从1->3可以直接到,不需要经过2号点就可以了,这样2号点就不会出现被重复覆盖的现象,那我们就使用floyd来解决问题,剩下的就是套模版的问题了#include#include#include#include#include#i

2013-10-21 19:44:15 1075

原创 poj2226 Muddy Fields

这道题跟poj3041其实是一样的,只不过3041是一下子可以消除一行或者一列,这里可以转化一下,把每一行或者每一列 的连续的 水洼 设为同一个点即可,这样就能转化为poj3041,#include#include#include#include#include#include#include#include#include#include#in

2013-10-21 19:07:56 794

转载 关于二分匹配的基础图论知识

这是我同学写的,挺不错的 就转来,图画的难看了点,不过意思很到位!!九野的博客,转载请注明出处:http://blog.csdn.net/acmmmm/article/details/12891989 图分成点和边所有点组合成一个集合:点集,一般用 V 表示所有边组成一个集合:边集,一般用 E 表示所以一个图可以表示为 G =

2013-10-21 18:55:02 885

转载 二分匹配进步例题,这个博主写的很好的

转自:http://blog.csdn.net/hackbuteer1/article/details/7398008建议看他的分析以及想法,他的有些做法我觉得还是有些难的,不懂了就看看他的想法 跟分析,然后自己构建图去做好了    二分图指的是这样一种图,其所有顶点可以分成两个集合X和Y,其中X或Y中任意两个在同一集合中的点都不相连,所有的边关联在两个顶点中,恰好一个属于

2013-10-20 22:08:42 1683

原创 HDU2819 Swap 看似很难的题目其实用二分匹配就解决了

还是转载了别人的分析,这道题目我做的时候看到过的人很少,自己害怕了,还好自己在做二分匹配的专题,就用二分匹配的想法去想,结果做出来了,unbelivevable!!!接下来是分析:转自 http://blog.csdn.net/hackbuteer1/article/details/7398008这个博主的做法建图方式有些独特比较难懂,我还是常规建图其实就是简单的二分匹配,行和列匹

2013-10-20 22:05:46 792

原创 poj 1325 Machine Schedule 二分匹配

转载了别人的分析分析:显然,机器重启次数是两台机器需要使用的不同模式的个数。把每个任务看成一条边,即A机器的每个模式看成一个X节点,B机器的每个模式看成一个Y节点,任务i为边(ai, bi)。本题即求最少的点让每条边至少与其中的一点关联,即求一个点的最小覆盖。可以证明,这个最小覆盖就是该二分图的最大匹配数。故二分图匹配的模型就建好了。注意到开始时机器都处于0模式,所以如果某个任务可以在0模式下

2013-10-20 20:40:28 679

原创 poj1274 The Perfect Stall 二分匹配简单题

题意:农夫约翰上个星期刚刚建好了他的新牛棚,他使用了最新的挤奶技术。不幸的是,由于工程问题,每个牛栏都不一样。第一个星期,农夫约翰随便地让奶牛们进入牛栏,但是问题很快地显露出来:每头奶牛都只愿意在她们喜欢的那些牛栏中产奶。上个星期,农夫约翰刚刚收集到了奶牛们的爱好的信息(每头奶牛喜欢在哪些牛栏产奶)。一个牛栏只能容纳一头奶牛,当然,一头奶牛只能在一个牛栏中产奶。输入:第一行 两个整数,N

2013-10-20 19:46:08 779

原创 poj2446 Chessboard 二分匹配

这个做法跟poj3020很相似,但是因为是用1*2的矩阵去铺盖,看铺盖是否能完成,所以做法有些不一样,想法讲一下,由于表达能力有限。所以复制了一个讲法比较好的一段话,这段话讲的很清晰,有时候自己做得出来 但是要讲却还是讲不好的,下面给出这段话以及他的代码,我自己的代码会放到最后//poj_2446/*====================================

2013-10-20 19:10:37 669

原创 poj3020 Antenna Placement 二分匹配 最小路径覆盖

#include#include#include#include#include#include#include#include#include#include#include#include#include#define ll long long#define LL __int64#define eps 1e-8const ll INF=999999999999

2013-10-20 18:16:55 776

原创 HDU1281 棋盘游戏 二分匹配

做这道题目的时候建议先去做一下poj3041,超级爽的感觉这题目做出来,真心话 先做poj3041,再做这道题目 效果真的很好,这道题是中文的,直接贴代码了#include#include#include#include#include#include#include#include#include#include#include#include#inclu

2013-10-17 22:54:40 655

原创 poj1469 COURSES 二分匹配基础题

依然是二分匹配,跟HDOJ的1150一模一样,#include#include#include#include#include#include#include#include#include#include#include#include#include#define ll long long#define LL __int64#define eps 1e-

2013-10-17 20:39:38 644

QT开发的小作品

QT开发小作品,小游戏,有两个,算是比较完善的了,代码具有注释可以自己看看

2015-12-29

AFNetworking2.5

AFNetworking框架 将文件夹中的名为 AFNetworking的子文件夹 添加到项目中去

2015-08-23

输出素数C++

设计一个程序,输入一个整数num(如num=120),降序输出小于num的所有素数,使用StackOfIntegers来保存素数(如2,3,5….),并利用它逆序获取和输出素数。

2014-11-10

MyInteger类

设计一个名为MyInteger的类,类包含: 一个名为valuede 的int型数据域,保存次对象表示的int型值 一个用指定的int型值创建一个MyInteger对象的构造函数 一个返回int型值的获取器函数 函数isEven()、isOdd()和isPrime分别在整数为偶数、奇数或素数的情况下返回真。 静态函数isEven(int)、isOdd(int),和isPrime(int)分别在给定整数为偶数、奇数或素数的情况下返回真。 函数equals(int)和equal(MyInteger)在本对象表示的整数值等于给定值的情况下返回真。 一个静态函数parseInt(string)将一个字符串转换为一个int型值。 画出类的UML图,实现类。编写一个客户程序,测试类的所有函数。

2014-11-10

TicTacToe游戏

2.(TicTacToe游戏)所谓TicTacToe游戏,就是两个游戏者轮流在一个3*3的棋盘的空位放入代表他们自己的棋子(可用X和O区分)。如果一个游戏者的棋子占据了棋盘的一行、一列或一条对角线,则游戏结束,此有学者获胜。当所有棋盘格都被填满,而没有任何一方能占据一行、一列或一条对角线,则为平局。编写一个玩TicTacToe的游戏程序,方式如下: 程序提示第一个游戏者放置一个X棋子,然后提示第二个游戏者放置一个O棋子。每当游戏者放置一个棋子,程序即刷新屏幕显示棋盘状况,并判断棋局状态(胜,平或尚未结束)。 为放置一个棋子,程序应提示用户输入棋子的行号和列号。 定义一个该类的友元函数print(),用来打印棋盘

2014-11-10

空空如也

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

TA关注的人

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