DescriptionWayne在玩儿一个很有趣的游戏。在游戏中,Wayne建造了N个城市,现在他想在这些城市间修一些公路,当然并不是任意两个城市间都能修,为了道路系统的美观,一共只有M对城市间能修公路,即有若干三元组 (Ui,Vi,Ci)表示Ui和Vi间有一条长度为Ci的双向道路。当然,游戏保证了,若所有道路都修建,那么任意两城市可以互相到达。Wayne拥有恰好N-1支修建队,每支队伍能且仅能修一...
分类:
其他好文 时间:
2015-08-12 14:42:10
阅读次数:
129
1.题目描述:点击打开链接
2.解题思路:本题利用DLX算法解决。巧妙之处其实在于转化过程。DLX算法解决的是精确覆盖问题,那么如何把一个数独问题转化为精确覆盖问题呢?我们可以发现,精确覆盖问题其实是选择一些行,要求最终可以恰好覆盖所有列。即行代表着可用的决策,列代表着一项任务,“1”表示该行可以完成的任务。我们试图来套用这一框架。
首先,每个决策可以用一个三元组(r,c,v)表示,即...
分类:
其他好文 时间:
2015-08-12 11:33:58
阅读次数:
139
为了节省存储空间并且加快并行程序处理速度,需要对稀疏矩阵进行压缩存储,压缩存储的原则是:不重复存储相同元素;不存储零值元素。常用的几种矩阵的存储格式如下:COO,CSR,DIA,ELL,HYB等;稀疏矩阵是指矩阵中的元素大部分是0的矩阵,事实上,实际问题中大规模矩阵基本上都是稀疏矩阵,很多稀疏度在90%甚至99%以上。因此我们需要有高效的稀疏矩阵存储格式。本文总结几种典型的格式:COO,CSR,D...
分类:
其他好文 时间:
2015-08-12 01:19:36
阅读次数:
325
#include
#include
typedef int DataType;
typedef struct OLNode{
int i,j;
DataType e;
struct OLNode *right,*down;
}OLNode,*OLink;
typedef struct{
OLink *rowhead,*colhead;
int m,n,len;
}CrossList;
/...
分类:
其他好文 时间:
2015-08-08 18:19:16
阅读次数:
144
#include
#include
#define MaxSize 200
typedef int DataType;
typedef struct{ //三元组类型定义
int i,j;
DataType e;
}Triple;
typedef struct{ //矩阵类型定义
Triple data[MaxSize];
int rpos[MaxSize]; //用于存储三...
分类:
其他好文 时间:
2015-08-08 06:45:52
阅读次数:
151
#define MAX_SIZE 100
#define MAX_RC 20struct Triple
{
int i, j;//行下标,列下标
ElemType e;//非零元素值
};struct RLSMatrix
{
Triple data[MAX_SIZE + 1];//非零元三元组表,data[0]未用
int rpos[MAX_RC + 1];//各行第...
分类:
其他好文 时间:
2015-08-07 20:13:15
阅读次数:
188
#define MAX_SIZE 100struct Triple
{
int i, j;//行下标,列下标
ElemType e;//非零元素值
};struct TSMatrix
{
Triple data[MAX_SIZE + 1];//非零元三元组表,data[0]未用
int mu, nu, tu;//矩阵的行数,列数,非零元个数
};
int comp(i...
分类:
其他好文 时间:
2015-08-07 20:10:50
阅读次数:
181
在本地可以通过进程PID(progress id)来唯一标识一个进程,但是在网络中这是行不通的。其实TCP/IP协议族已经帮我们解决了这个问题,网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“协议+端口”可以唯一标识主机中的应用程序(进程)。这样利用三元组(ip地址,协议,端口)就可以.....
分类:
其他好文 时间:
2015-08-04 22:28:19
阅读次数:
169
定义元组是一个包含了若干个相关联变量的对象。元组的创建var newTuple = ("kt",20)
//由于Swift的类型推导,newTuple被推导为(String,Int)类型的变量元组的解绑几个变量一旦联合在一起,组成了一个元组,他们就被“绑定”了,要想从一个元组中单独取出某一个数据时,需要解绑元组。直接解绑直接解绑是最简单的一种解绑方式,只要定义若干个变量与元组中的变量一一对应即可。v...
分类:
编程语言 时间:
2015-07-30 23:20:17
阅读次数:
150
题目地址:POJ 3318
题意:有3个n*n的矩阵A,B,C,问AB是否等于C。
思路:题目描述很简单,就是用矩阵乘法,但是很明显矩阵乘法的时间复杂度为O(n^3),很明显超时。那怎么改进呢?就是用压缩矩阵的方法:
设矩阵R是1*n的矩阵,根据矩阵的性质,若A*B*R=C*R,那么A*B=C。由此可以看出来,虽然多成了一个矩阵,但是时间复杂度成了O(n^2)。那么问题是这个R的行列式该怎么设...
分类:
其他好文 时间:
2015-07-28 13:12:37
阅读次数:
94