• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

  • 联系
  • 订阅
  • 管理

2011年4月22日

poj 2186 Popular Cows 强连通分量tarjan算法

摘要: //第一次用Tarjan求强连通分量//先求强连通分量,再重新构图,找出度为0的点,并且出度为0的点只有1个//这题不能求入度,不能判断重新构图后的点的入度为n-1//因为存在单链的情况,这时,链尾的点就是答案,但是该入度为1#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int N =... 阅读全文

posted @ 2011-04-22 22:25 sysuwhj 阅读(554) 评论(0) 推荐(0)

2011年4月20日

sicily 1264. Atomic Car Race 动态规划

摘要: //这题做了一晚//很简单的dp水题,一开始超时,优化后又WA,结果发现是输出精度不够,至少要输出小数点后4位//先要预处理一下,不然dp过程中会出现很多重复计算//设dp[i]为完成路程a[1]+...+a[i]的最小时间,cost[i][j]为从站i换轮胎后,到站j所需的时间//dp[i] = min(dp[k]+cost[k][i]+b), 0 < k < i//dp[0] = 0;#inc... 阅读全文

posted @ 2011-04-20 10:43 sysuwhj 阅读(548) 评论(0) 推荐(0)

2011年4月15日

sicily 1158. Pick numbers bfs

摘要: //这题一开始感觉是dp,状态转移方程为dp[i][j] = min(dp[i][j-1], dp[i-1][j]) + maze[i][j]//提交上去WA//后来发现这题不能用dp,因为题目要求的是正的最小值,状态转移方程的min会取到负数,//当求出dp[n][m]为负数时,有可能存在一条和为正的路径//注意到n,m都比较小,可以直接用bfs搜索过#include <iostream>#in... 阅读全文

posted @ 2011-04-15 18:29 sysuwhj 阅读(488) 评论(0) 推荐(0)

2011年4月8日

sicily 1011. Lenny's Lucky Lotto 动态规划

摘要: //设dp[i][j]为选取的第i个数为j的方案数//dp[i][j] = sum(dp[i-1][k]), i-1 <= k <= j/2//ans = sum(dp[n][k])#include <iostream>#include <cstring>#include <cstdio>using namespace std;const int N = 15;const int M = 2005... 阅读全文

posted @ 2011-04-08 22:25 sysuwhj 阅读(651) 评论(0) 推荐(0)

sicily 1010. Zipper dfs || dp

摘要: //这题可以用暴力搜索//要注意减枝和各种预处理,不然各种TLE//方法是搜索s里的=s1的子串,再判断s剩下的字符是否能组成s2#include <iostream>#include <cstring>#include <cstdio>using namespace std;const int N = 205;char s1[N], s2[N], s[N], tmp[N];int low_tim... 阅读全文

posted @ 2011-04-08 21:15 sysuwhj 阅读(692) 评论(0) 推荐(0)

2011年4月1日

poj 1189 钉子和小球

摘要: //这题有几个需要特别注意的地方//不能算对应的格子的数量/总数,只能通过计算每层的概率得到//一开始用计算总数,计得5/14和sample里的7/16对不上//这里的层数有50层, 2^50次方,用unsigned long long//在计算lcm时,要先除再乘,不然会溢出。//在计算gcd时,传入的参数a,b要满足a>b//因为这些原因各种错误RE,WA#include<iostream>u... 阅读全文

posted @ 2011-04-01 23:21 sysuwhj 阅读(558) 评论(0) 推荐(0)

2011年3月31日

poj 1157 LITTLE SHOP OF FLOWERS 动态规划

摘要: //dp[i][j]表示前i个花瓶装前j束花的最大审美值//dp[i][j] = max(dp[i-1][j], dp[i-1][j-1]+cost[j][i])#include<iostream>using namespace std;const int INF = 1000000000;const int N = 105;int dp[N][N];int cost[N][N];int f, n... 阅读全文

posted @ 2011-03-31 23:55 sysuwhj 阅读(360) 评论(0) 推荐(0)

2011年3月30日

zoj 1196 Fast Food 动态规划

摘要: //dp[i][k]表示前i个店添加k个供应点所达到的最小值//状态转移方程为:dp[i][k] = min(dp[j][k-1], dis[j+1][i]),//其中k-1 <= j <= i-1, dis[i][j]表示从第i个饭店到第j个饭店添加一个供应点所达到的最小值,取i,j中间值即可//初始化:dp[0][0] = 0;#include <iostream>#include <cstr... 阅读全文

posted @ 2011-03-30 19:20 sysuwhj 阅读(386) 评论(0) 推荐(0)

2011年3月19日

zoj 1060 Sorting It All Out 拓扑排序

摘要: //这题之前一直卡着没过,今晚蛋疼了一晚才过//这题是拓扑排序,有几个易错点//拓扑排序的时候,m每次要保证入度为0的点只有1个,因为题目要求的是完全排序//当满足条件(确定排序或检测到矛盾)后,后面的输入就可以不管了#include <iostream>#include <queue>#include <string>#include <cstring>using namespace std;c... 阅读全文

posted @ 2011-03-19 22:40 sysuwhj 阅读(611) 评论(0) 推荐(0)

zoj 1074 To the Max 最大子矩阵之和

摘要: //这题开始方法想错了,调了半天,才发现动规方程列不正确//这题可以看做一维数组的连续子串最大和的扩展//方法是把二维转换成一维,再用一维的动规方程求//把多行合并成一行求#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int N = 105;const int INF = 100000... 阅读全文

posted @ 2011-03-19 19:05 sysuwhj 阅读(487) 评论(0) 推荐(0)

下一页
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3