1 /** 2 大意: 求[a,b] 之间 phi(a) + phi(a+1)...+ phi(b);
3 思路: 快速求欧拉函数 4 **/ 5 6 #include 7 #include 8 using namespace std; 9 #define Max
300000010 11 ...
分类:
其他好文 时间:
2014-05-14 00:47:07
阅读次数:
287
【问题】
求一个给定的加权连通图的最小生成树问题。
【代码】
#include
#include
#define MAXNUM 1000
#define MAX_VERTEX_NUM 20
typedef char Vertextype;
typedef struct node
{
int weight;
}Adjmatrix[MAX_VERTEX_NUM][MAX_VERT...
分类:
其他好文 时间:
2014-05-13 23:55:49
阅读次数:
464
为了让编译器更好地优化循环,应该尽量让循环中减少判断,方法之一是将判断语句整合进表达式。还是这个例子:
for (int i = 0; i < 1000*10; i++)
{
sum += data[i/1000][i%10];
}
假如我们需要加一个判断,只有非负整数才需要作求和运算:
for (int i = 0; i
{
if (data[i/10...
分类:
编程语言 时间:
2014-05-13 23:01:28
阅读次数:
324
最长公共子序列是动态规划基本题目,下面按照动态规划基本步骤解出来。
1.找出最优解的性质,并刻划其结构特征
序列a共有m个元素,序列b共有n个元素,如果a[m-1]==b[n-1],那么a[:m]和b[:n]的最长公共子序列长度就是a[:m-1]和b[:n-1]的最长公共子序列长度+1;如果a[m-1]!=b[n-1],那么a[:m]和b[:n]的最长公共子序列长度就是MAX(a[:m-1]和...
分类:
编程语言 时间:
2014-05-13 07:57:53
阅读次数:
538
题目链接:点击打开链接
暴力出奇迹。
正解应该是最近点对,以i点为x轴,sum[i](前缀和)为y轴,求任意两点间的距离。
先来个科学的暴力代码:
#include
#include
#include
#include
#include
#include
using namespace std;
#define N 100050
#define ll __int64
ll a[N], su...
分类:
其他好文 时间:
2014-05-13 05:45:30
阅读次数:
283
三目运算来计算总页数 totalpage=sum/pagesize+sum%pagesize==0?0:1;//计算总页数,sum为总记录数
2.第page页的记录的起始位置和结束位置分别为:
pagesize*(page-1)+1;起始位置
pagesize*page;j、结束位置
注:
1.可以使用差集(minus)在数据库查询中实现分页,但效率低'
2.常用子查询将rownum作为另一结果集的字段来实现分页。
select ee.* from(select e.* , rownum rr...
分类:
其他好文 时间:
2014-05-13 05:14:41
阅读次数:
303
NFS与PRCNFS就是(NetworkFileSystem的缩写,最初是由sum这家公司所发展起来的。它最大的功能就是可能通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。NFS是通过网络来传输数据的,那么NFS使用哪个端口来进行数据传输呢?基本上NFS这个服务器的端口开在2049,但是..
分类:
其他好文 时间:
2014-05-13 03:29:06
阅读次数:
294
可以用递归简洁的写出,但是会超时。
dp嘛。这个问题需要从后往前算,最右下角的小规模是已知的,边界也很明显,是最后一行和最后一列,行走方向的限制决定了这些位置的走法是唯一的,可以先算出来。然后不断的往前推算。
用distance[i][j]保存从当前位置走到最右下角所需的最短距离,状态转移方程是从distance[i+1][j]和distance[i][j+1]中选一个小的,然后再加上自身的。...
分类:
其他好文 时间:
2014-05-13 00:13:56
阅读次数:
339
dp[ i][j]=max(四个方向点)+1;
四个方向上的点应该存在,且大于i,j,表示以i,j开始的点最长路径,递归的结束条件不用判断,因为 dp[][]最大数位置肯定
直接结束,随后次大值肯定能结束,以此类推,所以可以执行,但自下而上动态规划不好写。因为要确定这些数的大小,麻烦。 #inclu...
分类:
其他好文 时间:
2014-05-12 21:21:23
阅读次数:
323
1、
??
Surrounded Regions
Given a 2D board containing 'X' and 'O',
capture all regions surrounded by 'X'.
A region is captured by flipping all 'O's into 'X's
in that surrounded region.
For e...
分类:
其他好文 时间:
2014-05-11 18:52:32
阅读次数:
293