• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
tmeteorj
Nothing is so big that it is impossible to get over, and hurt only serves to make us stronger. 没有什么事是大到无法战胜的,痛苦也只会让我们变得更加坚强。
博客园 | 首页 | 新随笔 | 新文章 | 联系 | 订阅 订阅 | 管理

2012年10月23日

POJ 1084
摘要: 题意:n*n的矩形阵(n<=5),由2*n*(n+1)根火柴构成,那么其中会有很多诸如边长为1,为2...为n的正方形,现在可以拿走一些火柴,那么就会有一些正方形被破坏掉。问,在已经拿走一些火柴的情况下,还需要拿走至少多少根就可以把所有的正方形破坏掉。题解:可以用dancing links做,让火柴做为行,让所有的正方形作为列,且如果i火柴能让j正方形破坏掉,就让第i行第j列为1,然后做一次可重复的覆盖,取最小值便可以得到答案。另外,涉及两个优化, 1、最优化剪枝,即最好情况下也不会比当前最优值更优的剪枝。 2、不必一开始就将所有的火柴棍与正方形的对应关系加入到DLX中,应该在读完所有. 阅读全文
posted @ 2012-10-23 20:46 tmeteorj 阅读(1430) 评论(0) 推荐(0)
 
POJ 3544
摘要: 题意:n头猪分别送往n座城市,每头猪重量不同,每一千克运送一公里会花费t元,每个城市距离养猪场的位置也不同,单位猪的价格也不同,求最优分配方案。题解:贪心,每座城市猪的单位价格p减去到这座城市的距离d乘以t为把猪送到这座城市的单位获益,重的猪就送往获益大的地方。View Code 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 typedef long long LL; 6 struct data 7 { 8 LL p,d; 9 int 阅读全文
posted @ 2012-10-23 12:20 tmeteorj 阅读(233) 评论(0) 推荐(0)
 
 

公告


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