自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 同余模算术

一、基本概念和性质 1、模运算的介绍 模运算即求余运算:在数学中用符号 mod 表示。模 p 运算的定义如下: 给定一个正整数 p,任意一个整数 n,一定存在等式:n=kp+r(k、r 是整数,且 0<=r < p),称 k 为 n 除以 p 的商,r 为 n 除以 p 的余数,记着:r=n mod p。 针对模 p 运算,可以数环来理解:一个圆环有 p 米,并标刻度:0,1,…,p-1:

2016-11-03 20:45:09 4452

原创 最优生成树(kruskal算法)

【问题描述】 给出N个顶点、E条边的连通无向简单图,请你完成下列任务:任务1、求边权和最小的生成树(最小生成树) 任务2、求边权和最大的生成树(最大生成树) 任务3、求最大边最小的生成树(瓶颈生成树) 任务4、求最小边最大的生成树(瓶颈生成树) 【输入格式】   第一行:两个整数N,E(N<=50000,E<=100000),分别表示有N个新岛,E对能直接用电缆连接的岛屿,其中主岛为1。

2016-07-12 16:42:37 2569

原创 导游【并查集】

【问题描述】 Mr.he有一家旅游公司。他得当前任务是带一些游客去一个遥远的城市。一些城市之间有双向道路。每对相邻城市之间都有一条高速公路,每条路线规定了自己的最大乘客数目。Mr.he有一份包含城市间道路的状况和公交车最大载重容量的地图。(最多有50000个城市,有100000条道路,道路的容量位于区间[1,100000]),并保证任意两点之间能相互到达。往往无法一次性地将所有乘客带往目的地。例如

2016-07-11 14:39:29 445

原创 无向无权图的最短路径数

【问题描述】   给出 n 个顶点(编号为1..n),m 条边的无向无权图,请计算 1 到 n 的最短路径数目(只要有一条边不同,就是两条不同的路径)。【输入格式】   第一行包含两个整数:n,m,表示图的顶点和边的数目。   接下来的m行,每行包含2个整数:a,b((1 ≤ a, b ≤ n),表示图的一条边关联的顶点为a,b。【输出格式】   一个整数,表示 1 到 n 的最短路径数目。

2016-07-10 17:35:06 4573

原创 POJ1088 高山滑雪【记忆化搜索】

【问题描述】   Michael喜欢滑雪这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。     Michael想知道载一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子            一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中

2016-07-10 16:10:22 311

原创 DAG图与拓扑排序

【问题描述】    有N个士兵,编号依次为1,2,3,…,N, 队列训练时,指挥官要把一些士兵从高到矮依次排成一行。但现在指挥官不能直接获得每个人的身高信息,只能获得“p1比p2高”这样的比较结果:记为p1>p2。例如1>2,2>4,3>4。士兵的身高关系如图所示:                  

2016-07-08 16:12:55 2584

原创 弱智进制转换

#include<stdio.h>#include<string.h>char s[100];char t[20]; int len=0;void initial(){ for(int i=0;i<=9;i++) t[i]=i+'0'; for(i=10;i<=15;i++) t[i]=i-10+'A'; ...

2019-12-17 12:10:15 195

原创 NOIP2012提高组 同余方程

这道题是一道比较经典的水题,重点在于理解同余方程。 只需利用数论的定理就能够很轻松的解决。参见下列代码:#include<cstdio>#include<cstring>#include<iostream>#include<cstdlib>using namespace std;int exgcd(int a,int b,int &x,int &y){ if(b==0){x=1,

2016-11-03 20:35:08 578

原创 【poj 3714 / hdu 1007 /uva 10245】经典题 平面上最近的点对

【问题描述】   给定平面上n个点,找出其中的一对点的距离,使得在这n个点的所有点对中,该距离为所有点对中最小的。【输入格式】   第一行:n;   接下来n行:每行两个实数:x y,表示一个点的行坐标和列坐标,中间用一个空格隔开。【输出格式】   仅一行,一个实数,表示最短距离,精确到小数点后面4位。【输入样例】 3 1 1 1 2 2 2【输出样例】 1.0000【数据范围】

2016-07-29 10:03:28 458

原创 旅行 解题报告

旅行 (travel.cpp/c/pas) 【问题描述】 Mr_H旗下的 n 个OIer坐船外出旅行! 但是他们只有一艘船,虽然船能装下全部的Oier,但太拥挤将会影响众OIer的心情,所以Mr_H决定选择一部分Oier去。我们假设,每个人单独坐船的快乐程度是Ci,而船上每多一个人,他的快乐程度会减去Di。 现在你的任务是帮助Mr_H计算,选择那些人,才能使船上所有人的快乐程度之和达到

2016-07-27 22:32:21 535

原创 【NOIP2004提高组】合并果子(贪心)

【问题描述】   在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。   每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。   因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体

2016-07-22 11:10:03 2304

原创 序列的 离散化

【问题描述】   对于一个数据元素很大的序列:A[1],A[2],…,A[n],我们在处理这个序列时,往往只会关心序列中元素的大小关系。这时候为了处理方便,可把序列映射为1..n范围内的数,其中最小的元素映射为1,第2小的数映射为2,……。例如:   原 序 列:19827345 2000000053 73925 98203456 73925 19827345   映射序列:  2     4

2016-07-21 08:38:11 997

原创 极品飞车(并查集+枚举)

【问题描述】 FC星有许多城市,城市之间通过一种奇怪的双向高速公路进行交流,每条公路都对行驶在上面的飞车限制了固定的速度,同时FC星人对飞车的“舒适度”有特殊要求,即乘坐过程中最高速度与最低速度的差越小乘坐越舒服,但对时间却没那么多要求。要注意的是FC人的飞车能瞬间提速或降速。现在需要你找出一条城市间的最舒适的路径。 【输入格式】   第一行有2个正整数N(1#include<cstdio>

2016-07-11 15:55:58 405

原创 亲戚【并查集】(内附并查集基本操作)

【问题描述】   何氏家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。【输入格式】   第一行:三个整数N,M,Q(N<=20000,M<=100000,Q<=100000),分别表示有N个人,M个亲戚关系,

2016-07-11 10:50:45 2034

原创 Uva 10129 Play on Words(欧拉路径)

【问题描述】   有一些秘密的门包含着非常有趣的单词迷题, 考古学家队伍必须解决它们才能够打开大门。 因为没有其他方法能打开这些门, 所以解决那些迷题对我们非常重要。   在每个门上有很多个有磁力的n个盘子,盘子上面写着单词。 必须重新移动放置这些盘子,让它们形成一个队列:队列中,除了第一个单词,每个单词的开头和上一个单词的结尾字母一样。例如, motorola的后面可以接上acm。   你的任务

2016-07-10 16:29:46 377

原创 poj 3180 The Cow Prom(奶牛舞会)

【问题描述】   约翰的N只奶牛非常兴奋,因为这是个舞会之夜!他们穿上礼服和新鞋子,别上鲜花,他们要表演圆舞曲。圆舞在一个圆形的水池上进行。奶牛们围在池边站好,顺时针顺序由1到N编号。每只奶牛都面对水池,这样她就能看到其他的每只奶牛。   为了跳这种圆舞,他们找了M条绳索。若干只奶牛的蹄子上握着绳索,绳索沿着顺时针方向绕过水池,另一端则捆在另一些奶牛的身上。这样,一些奶牛就可以牵引另一些奶牛。有的

2016-07-10 10:55:46 896

原创 强连通分量基础题

【问题描述】   给出 n (编号为1..n)个顶点,m 条边的有向图,请完成下列任务:   任务1、计算并输出图的强连通分量数。   任务2、计算并输出图的最大强连通分量。 【输入格式】   第一行两个整数 n 表示有n个点。接下来的 n 行,第i+1行表示点i发出的有向边,其中第k个数表示i出发的第k条有向边的另一个顶点,0表示结束。【输出格式】   第 1 行:一个整数,表示图的强连通分

2016-07-10 10:51:24 801

原创 Uva11396 Claw Decomposition(爪分解)

uva11396 爪分解 【问题描述】 给出n(n≤300)个节点的简单无向图(无自环无重边),每个点的度为3。现在你需要判断能否将它分解成若干个爪(如图所示)。在你的方案中,每条边必须恰好属于一个爪,但同一个节点可以出现在多个爪里。           【输入格式】   多组输入数据:   每组数据第一行为这个图的点数n,第二行开始每行2个整数a, b(1 <= a, b <= n

2016-07-10 08:15:00 315

原创 【NOIP2010提高组】关押罪犯

此题显然是一道关于二分图的题目,因为数据较大,且属于最大值最小问题,所以很容易的可以联想到二分猜答案的方法来优化算法。 代码如下:#include<cstdio>#include<cstring>#include<queue>#include<vector>#define maxn 20005using namespace std;int color[maxn],n,m;struct

2016-07-09 12:01:29 266

原创 关押罪犯【C++】

此题显然是一道关于二分图的题目,因为数据较大,且属于最大值最小问题,所以很容易的可以联想到二分猜答案的方法来优化算法。代码如下:#include#include#include#include#define maxn 20005using namespace std;int color[maxn],n,m;struct edge{  int u,v,w;

2016-07-09 11:03:38 761

空空如也

空空如也

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

TA关注的人

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