a_beginner

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

2013年8月5日

摘要: 题目连接:http://poj.org/problem?id=3616题意:一个奶牛在0~N时间段内可被取奶,每次挤奶以后必须休息至少R分钟才能下次继续挤奶。有M次可以挤奶的时间段,每次取奶对应三个值:开始时间、结束时间、效率值,每次挤奶的过程不能中断。求出最大效率值。解法:首先按照结束时间从小到大排序(按照结束时间排序方便后边的dp);dp[i]表示第i个挤奶时间段后,效率最大值。转移方程如下:初始化:dp[i] = data[i].eff代码如下: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; ... 阅读全文
posted @ 2013-08-05 17:00 a_beginner 阅读(189) 评论(0) 推荐(0)

摘要: 手写堆 1 int size = 0;//堆的大小 2 int heap[maxn]; 3 void push( int x ) 4 { 5 int i = size; 6 while( i > 0 ) 7 { 8 int p = (i - 1)/2; 9 if( heap[p] x)31 break;32 heap[i] = heap[a];33 i = a;34 }35 heap[i] = x;36 return ret;37 } 阅读全文
posted @ 2013-08-05 15:50 a_beginner 阅读(111) 评论(0) 推荐(0)