- 博客(8)
- 资源 (3)
- 收藏
- 关注
原创 01背包问题
问题描述:给定n种物品和一背包,物品i的重量是w[i],其价值是c[i],背包的容量是m,问如何选择装入背包中的物品总价值最大?问题的特点是:每种物品一件,可以选择放1或不放0。用子问题定义状态:即f[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值。则其状态转移方程便是:f[i][v]=max{f[i-1][v],f[i-1][v-c[i]]+w[i]}这个
2012-11-30 14:31:34 1347
原创 指数循环节问题
Given A,B,C, You should quickly calculate the result of AB mod C.(163). 链接:题目本公式的证明戳这里. 再利用大数取模就可以求出。#include #define LL unsigned long longLL modular_multi(LL a, LL b, LL m){
2012-11-29 05:24:44 6883 3
原创 并查集求欧拉回路/通路
题目:Play on Words 不过对于欧拉回路/通路的结论,倒是不难推出。欧拉通路:除首尾结点外,其余结点入度等于出度,起点出度减入度等于1,终点入度减出度等于1欧拉回路:所有结点的入度都等于出度思路:将每一个单词的首尾字母当做结点,首尾字母间连线,判断最后形成的有向图能否形成欧拉通路/回路,用并查集。#include#include#define N 27
2012-11-29 03:52:05 1666
原创 经典的回溯问题
八皇后问题是一个古老而著名的问题,是回溯算法的典型例题。该问题是十九世纪著名的数学家高斯1850年提出:在8x8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法?八皇后在棋盘上分布的各种可能的数目非常大。但是可以将一些明显不满足问题要求的格局排除掉,由于任意两个皇后不可能同行,即每一行只能放置一个皇后,因此将第i个皇后放置在第
2012-11-26 04:42:16 2807
原创 逆元详解
题目: 给两个数A,B,求A^B的因子和对9901取模的值。有两种方法:一种是用逆元求,一种是直接快速求等比数列的和。如果p为素数,当b不是p的倍数时,那么(a/b)%p=a*b^(p-2)%p,否则(a/b)%p=(a%bp)/bvoid Solve(LL A,LL B){ LL t,i,ans=1; for(i=0;p[i]*p[i]<=A;i++)
2012-11-24 21:19:29 69695 19
原创 JavaScript基础
JavaScript入门知识: JavaScriptfor(var i=1;i<6;i++){ document.write("i=",i,"");}with(Math)document.write(cos(PI/3));function university(name,city,url)
2012-11-13 17:55:01 1501
原创 二叉树的操作
二叉树的操作:#include #include #include #define MaxSize 100#define MaxWidth 40typedef char ElemType;typedef struct tnode{ ElemType data; struct tnode *lchild,*rchild;}BTNode;char r
2012-11-10 12:12:12 1047
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人