指针变量也可以指向一个函数。一个函数在编译时被分配给一个入口地址。这个函数入口地址就称为函数的指针。可以用一个指针变量指向函数,然后通过该指针变量调用此函数 1 #include 2 using namespace std; 3 4 int main() 5 { 6 int max(in...
分类:
编程语言 时间:
2014-07-22 00:18:37
阅读次数:
210
题意:给你一个给定的现金数量goal,还有你拥有的n种面值的现金。
接下来就是n种面值的现金你各拥有多少张。要你求出不超过给定goal的能用你手上拥有现金凑成的最大值!
思路:多重背包问题,状态方程dp(i,v)=max(dp(i,j),dp(i-1,v-kci)+kwi);
优化后AC代码:
#include
#include
struct p
{
int n;
...
分类:
其他好文 时间:
2014-07-22 00:09:34
阅读次数:
194
1 查询单表select * from emp;2 查询单表,并按照deptno降序和job升序排列select * from emp order by deptno desc , job asc;3 查询最高工资和最低工资select max(sal),min(sal) from emp ;4查询...
分类:
数据库 时间:
2014-07-22 00:05:34
阅读次数:
251
并查集(disjoint set) 代码(C)本文地址: http://blog.csdn.net/caroline_wendy并查集(disjoint set)是一种常用的数据结构.树形结构, 包含查询(find)和合并(unite)操作.时间复杂度O(a(n)), 比O(logn)要快.代码:class DisjoinSet {
static const int MAX_N = 10000;...
分类:
其他好文 时间:
2014-07-21 23:42:53
阅读次数:
201
集合上的dp,看小紫书想了好久~
有n个物体,m个特征,最少询问多少次能保证猜到是哪个问题。
首先在读入的时候将每个物体转化为一个二进制整数,用一个集合s来表示已经询问了哪些特征。
用d(s,a)来表示询问了集合s的特征,有集合a个特征已经具备,还需要问多少个特征的最小值。a一定为s的子集。
则状态方程为 d(s,a) = min{ max(d(s+{k},a+{k}),(s+{k},a...
分类:
其他好文 时间:
2014-07-21 23:33:05
阅读次数:
244
挺水的一道题,规律性很强,在数组中找出最大的数max,用max/m计算出倍数t,然后再把数组中的书都减去t*m,之后就把数组从后遍历找出第一个大于零的就行了
#include
#include
using namespace std;
int main(){
// freopen("in.txt","r",stdin);
int a[105],n,m;
while(~sca...
分类:
其他好文 时间:
2014-07-21 23:29:23
阅读次数:
312
怒拿一血,first blood,第一个区间DP,第一次就这样子莫名其妙不知不觉滴没了~~~
题目虽然是鸟语,但还是很赤裸裸的告诉我们要求最大的括号匹配数,DP走起~
dp[i][j]表示区间[i,j]的最大匹配数,那么最重要的状态转移方程就是:
dp[i][j]=max(dp[i][k]+dp[k+1][j])
对啦,要先初始化边界啊,两步走~:
memset(dp,0,siz...
分类:
其他好文 时间:
2014-07-21 23:27:29
阅读次数:
214
差分约束
题意倒是简单,难的是建立约束(建边)。可以初始化INF求最小,然后输出-dis[maxn]。也可以初始化-INF求最大,输出dis[maxn]。
求最大的时候:
minn为最小,maxn为最大。
输入 u ,v len 建立约束为 u->v = len,最后在 minn和maxn之间还要建立 i->i-1=-1 , i-1->i=0。
最后求minn-1 ~max...
分类:
其他好文 时间:
2014-07-21 22:43:47
阅读次数:
293
Maximum sumTime Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d
& %I64u
SubmitStatus
Description
Given a set of n integers: A={a1, a2,..., an}, we define a function d(A) as belo...
分类:
其他好文 时间:
2014-07-21 16:43:54
阅读次数:
257
链接:http://poj.org/problem?id=1185
题意:一个地图上有两种地形,H和P,P上可以放一个炮,攻击范围是上下左右各两格,问的是最多可以再地图上放多少个炮。行N
思路:因为上下左右各两格内不能放置炮,所以每一行的状态数从2^10减少到60种。状态转移方程为:dp[i][j][k]=max(dp[i-1][k][l]+bb[j])。dp[i][j][k]表示在第i行状...
分类:
其他好文 时间:
2014-07-21 16:21:13
阅读次数:
272