自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mollnn

You Tomorrow will befall.

  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 并查集初阶:畅通工程问题

畅通工程问题是一个很经典的并查集问题。不是说这一题不可以用图论来解决,而是这题用并查集的思想省时省力,何乐而不为?并查集类的补充:Count函数 在我之前的一篇文章中,用一个类封装了并查集的基本操作。而现在我们针对在畅通工程中遇到的一个问题,我们对这个类进行一个简单的拓展,也就是增加一个简单的Count函数。这个函数用于计算集合的数量。 int Count(int s,int e)

2016-08-29 21:11:14 814

原创 并查集应用:入门级

题目引用自洛谷。   若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。 第一行:三个整数n,m,p,(n 以下m行:每行两个数Mi,Mj,1 接下来p行:每行两个数Pi,Pj,询问Pi和P

2016-08-29 20:14:37 382

原创 并查集初探(一) 核心代码

在本文中,我们将并查集的基本操作封装为一个类,以便后面研究并查集的相关问题。 class UnionFindSet { public: int father[UFS_LIMIT]; UnionFindSet() { for(int i=0;i<UFS_LIMIT;i++) father[i]=i; return; } int Fi

2016-08-29 18:21:01 586

原创 秦九韶算法——高速的多项式运算解决方案

我们来设想一下,有一个次数为5000的多项式,需要10000次代入值查询,用传统的计算方法,时间复杂度有多高? 每一次带入,根据需要2500*5000=1.25*10^7次运算,可以视为O(n^2) 设带入次数为M,则复杂度为O(m·n^2)=O(1.25*10^11) 有什么办法能降低复杂度,让这个目标在1s内完成呢? 秦九韶算法就可以做到。通过数学上对多项式的一个简单变形,或者说,提公

2016-08-25 20:26:42 1484

原创 方格取数问题:双线动态规划

#include #include #include using namespace std; int main() { int i,j,l,k,n,t1,t2,t3,t4,a[10][10],b[10][10][10][10]; cin>>n; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); while(cin>>t

2016-08-24 16:59:23 482

原创 过河卒问题:简单动规

#include #include #include #include using namespace std; const int hmx[8]={-2,-1,1,2,2,1,-1,-2}; const int hmy[8]={1,2,2,1,-1,-2,-2,-1}; int hx,hy; int check(long long int x,long long int

2016-08-24 16:01:33 991

原创 搜索与数据结构

最简单的搜索当然分为两种,深度优先搜索和广度优先搜索。这两种算法分别采用了栈和队列的数据结构来实现。对于深搜,优化方法通常是各种剪枝,主要包括最优化剪枝和可行性剪枝。对于广搜,优化方式通常是进行重复去除和优先搜索。 通常都说能用深搜不用广搜,其实在一定条件下确实有道理。在很多情况下,深度优先搜索通常比广度优先搜索写起来简单、方便。同时,采用简单的递归方法来描述深度优先搜索,可以避开对数据结构

2016-08-24 12:39:30 726

原创 八皇后问题优化版(含代码)

之前发表过一个版本的八皇后,后来在洛谷上看到了另一个八皇后(其实是N皇后)。这个最大到达13,对剪枝要求较高。之前版本的程序有一个测试点无法通过。 提供参考代码: 本代码在输入13的时候可以在600ms内通过。

2016-08-13 19:56:05 2228

原创 Algorithm中QSort的几个误区

误区1:Sort和QSort没区别 这个不解释了,自己看定义 误区2:不能用来排字符串和结构体 这个……都是可以的,只是拍结构体要特殊些: struct str { int a; int key; }; int cmp(const void *a,const void *b) { return (*(str*)a).key-(*(str*)b).key; } 误区3:关于

2016-08-13 19:49:58 393

原创 八皇后问题:DFS剪枝

八皇后问题是一个DFS的老问题了。 【摘自OPEN JUDGE】 描述 会下国际象棋的人都很清楚:皇后可以在横、竖、斜线上不限步数地吃掉其他棋子。如何将8个皇后放在棋盘上(有8 * 8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题。  对于某个满足要求的8皇后的摆放方法,定义一个皇后串a与之对应,即a=b1b2...b8,其中bi为相应摆法中第i行皇后所处的列数。已经知道8

2016-08-10 19:01:59 4236

原创 动态规划-采药问题 [原题+题解]

这里的采药问题是一个典型的0-1背包。 原题(引用OPEN JUDGE) 1775:采药 总时间限制: 1000ms 内存限制: 65536kB 描述辰辰是个很有潜能、天资聪颖的孩子,他的梦想是称为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到个到处都是草药的山洞里对他说:“孩

2016-08-09 09:38:26 2137

原创 POJ-数据结构与算法-线性表 多项式加法

一开始把这一道题想得太简单了,直接用一个50W的数组结果RE. 提交人 班级 结果 内存 时间 代码长度 语言 提交时间 mollnn   Accepted 664kB 17ms 834 B G++ 3分钟前 mollnn   Runti

2016-08-06 15:00:57 695

Mollnn制作的草稿版

Mollnn制作的一款草稿版软件 给大家分享以下

2012-10-26

空空如也

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

TA关注的人

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