当前位置: 首页 > news >正文

(状压dp)uva 10817 Headmaster's Headache

题目地址

 1 #include <bits/stdc++.h>
 2 typedef long long ll;
 3 using namespace std;
 4 const int MAX=1e5+5;
 5 const int INF=1e9;
 6 int s,m,n;
 7 int cost[125];
 8 //char sta[MAX];
 9 string sta;
10 int able[125];
11 int dp[125][1<<8][1<<8];
12 int d_p(int i,int s0,int s1,int s2)
13 {
14     if(i==m+n)
15         return s2==(1<<s)-1?0:INF;
16     int& ans=dp[i][s1][s2];
17     if(ans>=0)
18         return ans;
19     ans=INF;
20     if(i>=m)//为应聘者
21         ans=d_p(i+1,s0,s1,s2);//不选
22     int m0=able[i]&s0,m1=able[i]&s1;
23     s0^=m0;s1=(s1^m1)|m0;s2|=m1;
24     ans=min(ans,cost[i]+d_p(i+1,s0,s1,s2));
25     return ans;
26 }
27 int main()
28 {
29     while(~scanf("%d%d%d",&s,&m,&n))
30     {
31         if(s==0)
32             break;
33         getchar();
34         memset(dp,-1,sizeof(dp));
35         memset(able,0,sizeof(able));
36         for(int i=0;i<m+n;i++)
37         {
38             getline(cin,sta);
39             int num=0,len=sta.length(),j;
40             for(j=0;j<len&&sta[j]>='0'&&sta[j]<='9';j++)
41             {
42                 num=num*10+sta[j]-'0';
43             }
44             cost[i]=num;
45             num=0;
46             for(;j<len;j++)
47             {
48                 if(sta[j]>='0'&&sta[j]<='9')
49                     num=num*10+sta[j]-'0';
50                 else
51                 {
52                     if(num)
53                     {
54                         --num;
55                         able[i]|=(1<<num);
56                     }
57                     num=0;
58                 }
59             }
60             if(num)
61             {
62                 --num;
63                 able[i]|=(1<<num);
64             }
65         }
66         printf("%d\n",d_p(0,(1<<s)-1,0,0));
67     }
68     return 0;
69 }

 

转载于:https://www.cnblogs.com/quintessence/p/7197642.html

相关文章:

  • iis6 只能运行aspx, html, 但不能运行asp
  • GBA火焰纹章改版-智慧的结晶2.0更新(发布)
  • 前端到后台ThinkPHP开发整站(2)
  • 放slides了,无人值守的性能测试 for 淘宝技术嘉年华TCon2011
  • 事件冒泡和事件捕获
  • 【Android Dev Guide - 01】 - What Is Android?什么是Android?
  • CodeVs——T 3304 水果姐逛水果街Ⅰ
  • 【Android Dev Guide - 02】 - Application Fundamentals 应用基础
  • 【代码笔记】iOS-自定义选择框(高底强弱)
  • 惨痛教训
  • python(二十八)
  • 页面查找技巧
  • SqlServer索引的原理与应用
  • Spring+SpringMVC+mybatis整合以及注解的使用(三)
  • vs2010 javascript代码折叠扩展插件
  • 【刷算法】从上往下打印二叉树
  • 2018以太坊智能合约编程语言solidity的最佳IDEs
  • 4. 路由到控制器 - Laravel从零开始教程
  • Angular 响应式表单之下拉框
  • Angular6错误 Service: No provider for Renderer2
  • Iterator 和 for...of 循环
  • Joomla 2.x, 3.x useful code cheatsheet
  • Odoo domain写法及运用
  • PHP的类修饰符与访问修饰符
  • Redis中的lru算法实现
  • SpriteKit 技巧之添加背景图片
  • Swoft 源码剖析 - 代码自动更新机制
  • Transformer-XL: Unleashing the Potential of Attention Models
  • 发布国内首个无服务器容器服务,运维效率从未如此高效
  • 分类模型——Logistics Regression
  • 基于webpack 的 vue 多页架构
  • ------- 计算机网络基础
  • 嵌入式文件系统
  • 深度学习在携程攻略社区的应用
  • 数组的操作
  • 鱼骨图 - 如何绘制?
  • Spring Batch JSON 支持
  • ​MySQL主从复制一致性检测
  • # C++之functional库用法整理
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (五)IO流之ByteArrayInput/OutputStream
  • (正则)提取页面里的img标签
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • ***原理与防范
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .Mobi域名介绍
  • .Net 高效开发之不可错过的实用工具
  • .net 使用ajax控件后如何调用前端脚本
  • .net 桌面开发 运行一阵子就自动关闭_聊城旋转门家用价格大约是多少,全自动旋转门,期待合作...
  • .NET导入Excel数据
  • .NET和.COM和.CN域名区别
  • .NET连接数据库方式