- 博客(52)
- 收藏
- 关注
原创 poj 2392 space elevator
题意:有一群牛要上太空,他们计划建一个太空梯(用一些石头垒),他们有k种不同类型的石头,每一种石头的高度为h,数量为c,由于会受到太空辐射,每一种石头不能超过这种石头的最大建造高度a;我们来简化一下这个问题,现在有n个物品,每个物品的质量为w[i],每个物品有都有c[i]件,问在V为容量的包里的最大价值量是什么,这就是一个多重背包问题。多重背包(MultiplePack): 有N种
2014-10-17 20:54:52 510
原创 POJ 3363 Costume Party sort
#include#include#include#define N 20010using namespace std;int n,m,a[N],s;int main(){ while(scanf("%d%d",&n,&s)!=EOF) { for(int i=1;i scanf("%d",&a[i]); sort(a+1,a+n+1);
2014-09-18 00:10:59 546
原创 poj 3661 Running DP
题目大意:N分钟,小刚每分钟可以选择是停下休息还是往前走,如果选择往前走的话可以在第i分钟走Di,当然,小刚的疲劳值也会增加1。如果选择休息则小刚的疲劳值会每分钟减小1,当小刚停下来以后,小刚只能在疲劳值降到0时才能继续再走。已知小刚的疲劳值最多不能超过M,当小刚度过N分钟后要保证他的疲劳值为0,问小刚最多能走多长的距离。
2014-09-17 23:47:48 501
原创 POJ 1179 Polygon 矩阵链乘 记忆化搜索
题目大意:多边形游戏,有N个顶点的多边形,3 ,多边形有N条边,每个顶点中有一个数字(可正可负),每条边上或者是“+”号,或者是“*”号。边从1到N编号,首先选择一条边移去,然后进行如下操作:1 选择一条边E和边E连接着的两个顶点V1,V2。2 用一个新的顶点代替边E和V1、V2,新顶点的值为V1、V2中的值进行边上代表的操作得来(相加或相乘)当最后只剩一个顶点,没有边时,游戏结束
2014-09-17 23:15:51 495
原创 POJ 1321 棋盘分割 DFS
#include#include#include#include#include#define MAXN 110 #define N 21using namespace std;int dx[4]={0,-1,0,1};int dy[4]={-1,0,1,0};int dl[4][2]={{0,-1},{-1,0},{0,1},{1,0}};int dr[4][2]={{0,
2014-08-28 20:33:35 432
原创 POJ 3083 Children of the Candy Corn
如下代码:#include#include#include#include#include#define MAXN 110 #define N 21int dx[4]={0,-1,0,1};int dy[4]={-1,0,1,0};int dl[4][2]={{0,-1},{-1,0},{0,1},{1,0}};int dr[4][2]={{0,1},{-1,0,},{0,
2014-08-28 20:21:12 358
原创 POJ 3009 Curling 2.0 DFS
题目要求:是要求把一个冰壶从起点“2”用最少的步数移动到终点“3”其中0为移动区域,1为石头区域,冰壶一旦想着某个方向运动就不会停止,也不会改变方向(想想冰壶在冰上滑动),除非冰壶撞到石头1 或者 到达终点 3 注意的是:冰壶撞到石头后,冰壶会停在石头前面,此时(静止状态)才允许改变冰壶的运动方向,而该块石头会破裂,石头所在的区域由1变为0. 也就是说,冰壶撞到石头
2014-08-28 19:44:43 448
原创 Codeforces #263 Div2 B
题目大意“给定一段大写字母序列。从n张牌中挑k张,每一张会+选出的牌中与它字母相同牌的数量一样的分数,问最大总分
2014-08-27 10:33:47 550
原创 POJ 1833 求下第K个字典序
排列Time Limit: 1000MS Memory Limit: 30000KTotal Submissions: 16483 Accepted: 6607Description题目描述: 大家知道,给出正整数n,则1到n这n个数可以构成n!种排列,把这些排列按照从小到大的顺序(字典顺序)列出,如n=3时,列出1
2014-08-26 11:35:25 971
原创 POJ 1004 Financial Management
不解释#include#include#includeusing namespace std;int main(){ int cnt=0; double x,ans=0; for(int i=1;i<=12;i++) { scanf("%lf",&x); ans+=x; cnt++; } printf("$%.2f\n",ans/12.0); //whi
2014-08-26 11:12:32 531
原创 HDU 1285 确定比赛名次 Topsort
题目大意:称职的裁判员忘记了比赛的名次,但还记得谁战胜了谁,给定M组条件,例如A->B 表示A战胜了B,保证信息之间不相互排斥,求输出比赛的名次。题目分析:是明显的拓扑排序:在此再介绍一下topsort,核心思想是通过给定的有向无环图确定每个点的入度,比如map[i][j]即表示i战胜了j,此时j的入度+1。但如果存在K点的入度为零,则表示没有人战胜了它,那么他即使排名第一的,然后删除该节
2014-08-22 21:38:15 852
原创 HDU 1249 三角形 数论
直接代码://hdu 1249 三角形(规律题)/*一个三角形两个面两个三角形八个面递推公式:f(n)=f(n-1)+6*(n-1);直接公式:f(n)=3*n*(n-1)+2;*/#include#include#include#includeusing namespace std;int main(){ long long n; int T; cin>>T
2014-08-22 17:33:30 620
原创 POJ 1050 最大矩阵子段和
题目大意:求出给定矩阵中最大的数字和。http://blog.csdn.net/piaoyi0208/article/details/7728972 写的很好,带有分析,不懂我代码的可以看一下。如下代码:#include#include#include#includeusing namespace std;int a[120][120],n,temp[110],maxx;
2014-08-22 17:17:18 467
原创 POJ 1862 Stripies priority_queue 单调队列
题目大意:给出N个数m1,m2,m3...任意两个相撞会形成一个新的m,m=2*sqrt(mi*mj),求剩下的最小的m题目分析:我们可以联想到贪心,每次都ling
2014-08-19 22:03:48 388
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人