题目链接:https://nanti.jisuanke.com/t/30994

题意:有n道题,做第i道题首先得做Si道题(p1​,p2​,...,psi​​),做一道题需要一分钟,在t时刻完成第i道题可以获得t×ai​+bi​分数

求最大值

思路:首先看数据就暗示了状压,1 << i表示第i道题,于是可以连一条  到i的有向边,然后记忆化搜索就好

#include<bits/stdc++.h>
//#define DEBUGusing namespace std;typedef long long ll;
typedef unsigned int ui;
const int maxn = 25;
const ll mod = 1e9 + 7;
const double pi = acos(-1);int n, m, cnt;
int a[maxn];
int b[maxn];
ll ans;map<int, ll> check[maxn];
vector<int> P[1 << 21];
set<int> S;inline void DFS(int t, int state, ll res)
{ans = max(ans, res);//cout << u << " " << t << " " << state << " " << res << endl;if(check[t][state] > res) return;check[t][state] = res;for(auto x: S){if((state & x) == x){for(auto v: P[x])if((state & (1 << v)) == 0){DFS(t + 1, state | (1 << v),  res + 1LL * a[v] * t + b[v]);}}}
}int main()
{ios_base::sync_with_stdio(0);cin.tie(0); cout.tie(0);while(cin >> n){int tmp, s;for(int i  = 1; i <= n; i++){cin >> a[i] >> b[i];cin >> s;int x = 0;while(s--){cin >> tmp;x |= 1 << tmp;}P[x].push_back(i);S.insert(x);}ans = 0;DFS(1, 0, 0);cout << ans << endl;}return 0;
}

ACM-ICPC 2018 南京赛区网络预赛 E AC Challenge相关推荐

  1. ACM-ICPC 2018 南京赛区网络预赛 E AC Challenge(状压dp)

    Dlsj is competing in a contest with n (0 < n \le 20)n(0<n≤20) problems. And he knows the answe ...

  2. ACM-ICPC 2018 南京赛区网络预赛 E. AC Challenge

    题解 题目大意 给你n个问题 要求每分钟解决一个问题 且不能中断 如果中断当前得分为最终得分 每个问题的得分为 解决时间*a[i] + b[i] 有的问题需要先完成某些问题才能做 使用状压DP 用二进 ...

  3. ACM-ICPC 2018 南京赛区网络预赛 J AC Challenge (状压dp)

    题意 给你n道题,在你做第ii{i}道题的时候有p[j]p[j]{p[j]}个前置条件,当这些前置条件都满足的时候,我们可以得到a[j]∗t+b[j]a[j]∗t+b[j]a[j] * t + b[j ...

  4. ACM-ICPC 2018 南京赛区网络预赛 E AC Challenge 状压DP

    题目链接: https://nanti.jisuanke.com/t/30994 Dlsj is competing in a contest with n (0 < n \le 20)n(0& ...

  5. ACM-ICPC 2018 南京赛区网络预赛 E.AC Challenge 状压dp

    题意: 给定n个作业,每个作业有两个值a,b, 第i天完成这个作业会得到value :i*a + b: 但是完成这个任务之前需要完成一些别的任务 思路: 乍一看像是搜索,但是似乎不太行(好像可以写过) ...

  6. ACM-ICPC 2018 南京赛区网络预赛 E. AC Challenge(状压dp)

    题目链接:https://nanti.jisuanke.com/t/30994 样例输入1 5 5 6 0 4 5 1 1 3 4 1 2 2 3 1 3 1 2 1 4 样例输出1 55 样例输入2 ...

  7. ACM-ICPC 2018 南京赛区网络预赛 E. AC Challenge 状压dp

    Dlsj is competing in a contest with n(0<n≤20)n (0 < n \le 20)n(0<n≤20) problems. And he kno ...

  8. ACM-ICPC 2018 南京赛区网络预赛丨AC Challenge丨状压DP

    题意: 一个人做n道题目,每道题会收获ai*t+bi的分数,同时要休息一个单位的时间t.此外,还限制做题目i之前,要先完成si道题目{pi1,pi2,···,pisi}求最多获得多少分数. 思路: n ...

  9. ACM-ICPC 2018 南京赛区网络预赛

    轻轻松松也能拿到区域赛名额,CCPC真的好难 An Olympian Math Problem 问答 只看题面 54.76% 1000ms 65536K Alice, a student of gra ...

最新文章

  1. undefined找不到函数情况总结
  2. vim中搭建与sourceinsight类似功能
  3. HALCON示例程序classify_image_class_mlp.hdev如何使用MLP分类器分割RGB图像
  4. 学会了很多计算机小技巧,超实用的八个电脑小技巧,全都学会让你成为电脑高手...
  5. RabbitMQ 添加用户(入门试炼_第2篇)
  6. GitHub | 周志华《机器学习》手推笔记正式开源!可打印版本附pdf下载链接
  7. Oracle 11.2.0.3 Patchset
  8. RabbitMQ学习总结(8)——RabbitMQ后台管理控制台页面属性总结
  9. jquery系列教程2-style样式操作全解
  10. VMware ESX虚拟磁盘性能测试
  11. sap 归档(ARCHIVE)
  12. OpenDrive格式高精度地图详细解析及其使用(1.栅格地图、OpenDrive坐标系以及参考线介绍)
  13. 一人顶一个团队的华为天才少年稚晖君,又带来一项硬核黑科技,引起极客圈地震!...
  14. 一文详解超纤皮和真皮的区别,别再傻傻分不清了
  15. C++中圆周率Π的几种表示方法arccos(-1), 2arcsin(1), 4arctan(1)的用法
  16. 移动端安全 | Windows11安卓子系统进行APP抓包(踩坑文)
  17. 定积分的基本性质3 保序性
  18. 极简试用期转正述职报告PPT模板
  19. mysql 1046_mysql 1046错误解决实例
  20. 乳腺肿瘤超声图像感兴趣区域的自动识别综述

热门文章

  1. ant脚本编译java_1.4 在Ant中编译Java代码
  2. Samba客户端工具
  3. 浙江大学PAT解题集7-5输出倒三角形
  4. php实习生实习日记,实习日记
  5. C#中的委托和事件(分分钟上手)
  6. 软件设计师2018下半年上午真题解析
  7. 设计模式-day05
  8. 职业发展--优势和性格测试
  9. 修改dhcp服务器租期,DHCP分配租期问题的重要性
  10. FPGA练习:与门电路的实现