2011年区域赛题
Jianquan520
这个作者很懒,什么都没留下…
展开
-
2011年福州赛区C题 Bob’s Race 树形DP RMQ
题目大意:给你一棵树,N个点(编号1~N),N-1条边,边上有权值。首先要知道每个顶点的所能到达的最远距离,然后有M个询问,每个询问给定一个Q,求出最多的编号连续的顶点,要求它们的最远距离的最大差值小于等于Q。数据范围:N算法实现:对于第一个问题,求出每个顶点所能到达的最远距离,是一个非常经典的问题。由于N最多有5W,我们不能对每个点都进行一次dfs。正确的解法是两次dfs,利用树形D原创 2013-09-06 10:48:34 · 801 阅读 · 0 评论 -
2011年福州赛区B题 Alice's mooncake shop 优先队列
题目大意:Alice经营了一家月饼店,有一系列的订单,对于每个订单,Alice可以立即去做月饼,或者用之前做好的月饼交货。Alice做月饼是不需要时间的,订单只会在每个小时的整点到达。每个小时做月饼的成本都不同,但是Alice可以预先做好月饼把它们放在冰箱里,每个月饼每小时的冷藏费用是S,最多能保存T个小时,求完成所有订单的最小成本。算法实现:这道题目最重要的是求出每个小时做月饼的最小原创 2013-09-05 12:29:25 · 833 阅读 · 0 评论 -
2011年福州赛区A题 Xiangqi 模拟题
#include #include #include #define cl(xx,yy) memset((xx),(yy),sizeof((xx)))using namespace std;char mat[15][15];bool solve(int x,int y){ bool flag=0; for(int i=x+1;i<=10;i++)原创 2013-09-05 11:11:11 · 835 阅读 · 0 评论 -
2011年大连赛区E题 Number String DP
题目大意:对于每一个1~n的排列都可以生成一个长度为n-1的字符串,这个字符串包含三种字符,分别是'I'、'D'、'?'。'I'表示下一位的数比当前位的数要大,'D'表示下一位的数比当前位的数要小,'?'表示'I'或者'D'都可以。比如排列3,1,2,7,4,6,5对应的字符串是"DIIDID"。给出一个字符串,求满足该字符串的排列数有多少。算法实现:对于某个字符的某一个解,比如对于字原创 2013-09-07 00:09:36 · 794 阅读 · 0 评论