题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5691

题意:中文,不解释

题解:设dp[i][j]表示当前状态为i,以第j个数为末尾的最忧解,然后dp下去就行了

 1 #include<cstdio>
 2 #define F(i,a,b) for(int i=a;i<=b;i++)
 3 inline void up(int &x,int y){if(x<y)x=y;}
 4
 5 int t,n,dp[1<<16][17],a[17],b[17],inf=-(1<<30),end,ans,ic=1;
 6
 7 int main(){
 8     scanf("%d",&t);
 9     while(t--){
10         scanf("%d",&n),end=(1<<n)-1,ans=inf;
11         F(i,1,n)scanf("%d%d",a+i,b+i),b[i]++;
12         F(i,0,end)F(j,1,n)dp[i][j]=inf;
13         F(i,1,n)if(!b[i]||b[i]==1)dp[1<<(i-1)][i]=0;
14         F(i,0,end){
15             int have=__builtin_popcount(i);//返回该数的二进制1的个数
16             F(j,1,n)if(dp[i][j]>inf)
17             F(k,1,n)if(j==k||(b[k]&&b[k]!=have+1)||i&1<<(k-1))continue;
18             else up(dp[i|1<<(k-1)][k],dp[i][j]+a[j]*a[k]);
19         }
20         F(i,1,n)up(ans,dp[end][i]);
21         printf("Case #%d:\n%d\n",ic++,ans);
22     }
23     return 0;
24 }

View Code

转载于:https://www.cnblogs.com/bin-gege/p/5696102.html

hdu_5691_Sitting in Line(状压DP)相关推荐

  1. HDU 5691 Sitting in Line 状压dp

    Sitting in Line 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5691 Description 度度熊是他同时代中最伟大的数学家,一切 ...

  2. Educational Codeforces Round 13 E. Another Sith Tournament 状压dp

    E. Another Sith Tournament 题目连接: http://www.codeforces.com/contest/678/problem/E Description The rul ...

  3. 【2019牛客暑期多校训练营(第五场)- E】independent set 1(最大独立集,状压dp)

    题干: 链接:https://ac.nowcoder.com/acm/contest/885/E 来源:牛客网 Note: For C++ languages, the memory limit is ...

  4. 【Gym - 101915D】Largest Group(二分图最大团,状压dp)

    题干: 大黑山上有小小民和小小涛两种物种,山东人小李想要研究这两种物种的关系 奇怪的是大黑山上有相同数量的小小民和小小涛.小李数了数一共有 P 个,小李分别给P个小小民和小小涛编号 1 - P 号,已 ...

  5. *【HDU - 4272 】LianLianKan (dfs 或 状压dp,贪心不行)

    题干: I like playing game with my friend, although sometimes looks pretty naive. Today I invent a new ...

  6. 【HDU - 2809】 God of War(状压dp)

    题干: At 184~280 A.D ,there were many kingdoms in China. Three strongest among them are "Wei" ...

  7. Codeforces Beta Round #8 C. Looking for Order 状压dp

    题目链接: http://codeforces.com/problemset/problem/8/C C. Looking for Order time limit per test:4 second ...

  8. [SGU223]Little Kings(状压DP)

    题目链接:http://acm.sgu.ru/problem.php?contest=0&problem=223 题意:n*n个格子里放k个王(走相邻8个格子),问不互相碰到的放法一共多少个. ...

  9. POJ3254 状压DP模板

    Corn Fields Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 6321   Accepted: 3361 Descr ...

最新文章

  1. 【青少年编程(第33周)】Scratch(三级)公益活动开营了!
  2. 使用E-MapReduce服务将Kafka数据导入OSS
  3. 斯坦福马超:随机梯度下降,也爱躺「平」……why?
  4. 正则表达式测试工具、网页版
  5. 使用正确的主机名访问https,提示连接不安全
  6. ubuntu下安装android ndk
  7. Android 项目在Eclipse中的目录结构
  8. [html] 你认为写出什么样的html代码才是好代码呢?
  9. 那些ubuntu创建用户踩过的坑
  10. 金融数据分析与挖掘实战1.4.4-1.5.1
  11. react native loading动画_TypeScript for React (Native) 进阶
  12. 2022.4.7网页一直在加载中,无提示
  13. 手写图像反转,变换,imhist,均衡化,均值中值滤波,sobel以及拉普拉斯实现图像锐化
  14. H5如何实现唤起APP
  15. Linux7网卡绑定后mac一样,如何解决双网卡bond0绑定模式物理成员口的mac地址和bonding接口mac地址不一致......
  16. 圣诞使用循环打印以下圣诞树:要求输入树的高度,打印树
  17. python中拼音怎么用_Python 中拼音库 PyPinyin 的用法【华为云技术分享】
  18. TFT,TFD,STN 屏幕以及VGA,QVGA,SVGA分辨率等常识
  19. js实现下雪雪花特效
  20. 红米5无线网连接上但是没有网络连接服务器,红米路由器wifi已连接但无法访问互联网怎么办 | 192路由网...

热门文章

  1. 使Eclipse下支持编写HTML/JS/CSS/JSP页面的自动提示。
  2. Main函数参数argc,argv说明
  3. 判断控件是否绑定了数据集的方法
  4. docker 仓库镜像 替换_自己动手创建 Docker 镜像并分享到镜像仓库,容器引擎的用途越来越广泛!...
  5. 计算机组成原理之指令和寻址方式
  6. php dump函数详解,php中var_dump()函数的详解说明
  7. parameter与localparam使用区别
  8. 利用MMCM IP核产生用户时钟
  9. STM32使用定时器延时
  10. Liunx静态库和动态库