2011年5月27日

HDU 3008 Warcraft

摘要: 哎,折磨死人的dp题,反正对于我来说是的,看了其他大牛们的代码过的,惭愧。。。。。#include<stdio.h>#include<string.h>int n,t,q;int skillCost[110];int skillhurt[110];int dp[110];//dp[i][j]表示第i轮攻击,boss还剩下j滴hp时候剩下的最大mpint max(int a,int b){ return a>b?a:b;}int main(){ while(scanf("%d%d%d",&n,&t,&q)) { if(n= 阅读全文

posted @ 2011-05-27 23:36 lonelycatcher 阅读(417) 评论(0) 推荐(0) 编辑

HDU 3006 The Number of set

摘要: 转自:http://zc634579757.blog.163.com/blog/static/1244974622009716104841721/这题真是让我看到了位运算和状压DP的神奇之处! 这题就是用一个二进制数保存一个集合的元素 比如一个集合中有两个元素 1 3 那就用5 (101)表示这个集合就是用0 1 来表示这个集合中一个数存不存在 再比如 一个集合有三个元素 1 4 5 就在这几个位子上标为1,那就用25 (11001)来表示这个集合!在借助于位运算的或( | )就可已达到合并集合的目的,比如一个集合(14 )和一个集合(1 2 3)进行合并 那就是 (9)1001 | 111( 阅读全文

posted @ 2011-05-27 18:02 lonelycatcher 阅读(683) 评论(2) 推荐(0) 编辑

快速幂取余

摘要: 快速幂取模算法,留着以后慢慢研究long long modExp(long long a,long long b,long long n){ long long t,y; t = 1; y = a; while(b){ if(b % 2) t = t * y % n; y = y * y % n; b >>= 1; } return t;} 阅读全文

posted @ 2011-05-27 14:07 lonelycatcher 阅读(672) 评论(0) 推荐(0) 编辑

导航