题目背景

kkksc03 的大学生活非常的颓废,平时根本不学习。但是,临近期末考试,他必须要开始抱佛脚,以求不挂科。

题目描述

这次期末考试,kkksc03 需要考 4 科。因此要开始刷习题集,每科都有一个习题集,分别有 s1​,s2​,s3​,s4​ 道题目,完成每道题目需要一些时间,可能不等(A1​,A2​,…,As1​​,B1​,B2​,…,Bs2​​,C1​,C2​,…,Cs3​​,D1​,D2​,…,Ds4​​)。

kkksc03 有一个能力,他的左右两个大脑可以同时计算 2 道不同的题目,但是仅限于同一科。因此,kkksc03 必须一科一科的复习。

由于 kkksc03 还急着去处理洛谷的 bug,因此他希望尽快把事情做完,所以他希望知道能够完成复习的最短时间。

输入格式

本题包含 5 行数据:第 11 行,为四个正整数 s1​,s2​,s3​,s4​。

第 2 行,为 A1​,A2​,…,As1​​ 共s1​ 个数,表示第一科习题集每道题目所消耗的时间。

第 3 行,为 B1​,B2​,…,Bs2​​ 共 s2​ 个数。

第 4行,为 C1​,C2​,…,Cs3​​ 共 s_3s3​ 个数。

第 5 行,为 D1​,D2​,…,Ds4​​ 共 s_4s4​ 个数,意思均同上。

输出格式

输出一行,为复习完毕最短时间。

样例 1

样例输入 1

```
1 2 1 3        
5
4 3
6
2 4 3
```

样例输出 1

```
20
```

提示

1≤s1​,s2​,s3​,s4​≤20。

1≤A1​,A2​,…,As1​​,B1​,B2​,…,Bs2​​,C1​,C2​,…,Cs3​​,D1​,D2​,…,Ds4​​≤60。

本体的关键在于如何找到复习完一个科目的最短时间,最理想的情况是左右脑学习时间各一半,此时最短学习时间为总时长的一半。由于数据原因,有时左右脑不能刚好分配学习时间各一半,所以我们不妨假设只有一个大脑在学习,当一个大脑学习时间t无限接近于总时长的一半时,最短学习时间就等于总时长减去t。之后就是dfs的实现了。

#include<stdio.h>
int sum1,sum2,sum3,max=-1;
int b[4];//建立一个数组存储各科题目数;
int a[21];//存储各题所用时间;
void dfs(int x,int y);
int main()
{for(int i=0;i<4;i++)scanf("%d",&b[i]);for(int i=0;i<4;i++){sum2=0;sum1=0;min=-1;for(int j=0;j<b[i];j++){scanf("%d",&a[j]);sum2+=a[j];}dfs(b[i],0);sum3+=(sum2-max);}printf("%d",sum3);return 0;
}
void dfs(int x,int y)
{if(sum1>sum2/2)return;if(sum1>max){max=sum1;//记入搜索到的一个脑袋的学习时间t;}for(int i=y;i<x;i++){sum1+=a[i];dfs(x,i+1);sum1-=a[i];}return;
}

考前临时抱佛脚(DFS)相关推荐

  1. P2392 kkksc03考前临时抱佛脚 (DFS)

    题目背景 kkksc03 的大学生活非常的颓废,平时根本不学习.但是,临近期末考试,他必须要开始抱佛脚,以求不挂科. 题目描述 这次期末考试,kkksc03 需要考 444 科.因此要开始刷习题集,每 ...

  2. 洛古P2392-kkksc03考前临时抱佛脚

    背包问题 1.kkksc03考前临时抱佛脚 题目 题目背景 kkksc03 的大学生活非常的颓废,平时根本不学习.但是,临近期末考试,他必须要开始抱佛脚,以求不挂科. 题目描述 这次期末考试,kkks ...

  3. kkksc03考前临时抱佛脚

    kkksc03考前临时抱佛脚 题目背景 kkksc03 的大学生活非常的颓废,平时根本不学习.但是,临近期末考试,他必须要开始抱佛脚,以求不挂科. 题目描述 这次期末考试,kkksc03 需要考 4科 ...

  4. kkksc03考前临时抱佛脚(DFS)

    题目背景 kkksc03 的大学生活非常的颓废,平时根本不学习.但是,临近期末考试,他必须要开始抱佛脚,以求不挂科. 题目描述 这次期末考试,kkksc03 需要考 44 科.因此要开始刷习题集,每科 ...

  5. P2392 kkksc03考前临时抱佛脚

    题目地址 题目背景 kkksc03 的大学生活非常的颓废,平时根本不学习.但是,临近期末考试,他必须要开始抱佛脚,以求不挂科. 题目描述 这次期末考试,kkksc03 需要考 44 科.因此要开始刷习 ...

  6. P2392 kkksc03考前临时抱佛脚(洛谷)JAVA

    题目背景 kkksc03 的大学生活非常的颓废,平时根本不学习.但是,临近期末考试,他必须要开始抱佛脚,以求不挂科. 题目描述 这次期末考试,kkksc03 需要考 4 科.因此要开始刷习题集,每科都 ...

  7. 洛谷P2392 kkksc03考前临时抱佛脚

    大意是给定4个整数集合,要求把每个整数集合分为两个部分,找到每个部分的最大值的最小,最后累加每个组的最小值. 深搜枚举每种情况 #include<iostream> #include< ...

  8. 洛谷——p2392 kkksc03考前临时抱佛脚

    今天练习了一些搜索,动态规划的题,只敢选普及-的来做,这个题看上去感觉用贪心来做,而且看上去不知道怎么用背包解题,他的最大"容量"是不确定的. 题目是这样的: [题目背景] kkk ...

  9. 洛谷P2392 考前临时抱佛脚

    题目背景 kkksc03 的大学生活非常的颓废,平时根本不学习.但是,临近期末考试,他必须要开始抱佛脚,以求不挂科. 题目描述 这次期末考试,kkksc03 需要考 44 科.因此要开始刷习题集,每科 ...

最新文章

  1. (正)斜杠 与 反斜杠
  2. MyBatis学习笔记(一)
  3. JQuery中对option的添加、删除、取值
  4. python中os.listdir()的使用和文件批量重命名方法
  5. 大数据学情分析_多分学情大数据分析
  6. opencv为matlab,OpenCV与matlab部分函数的对应关系(转)
  7. Python 之 游戏飞机大战项目实现
  8. 导入一个maven项目出现红色叉号的解决办法
  9. 没有wan接口_“伪千兆”路由器,快回家看看你家中招了没有?
  10. 计算机培训心得ppt展示,ppt制作学习心得
  11. 深度分析数据恢复原理——那些数据可以恢复那些不可以数据恢复软件
  12. 嵌入式开发日记(6)——对串口数据读取的优化以及处理程序的改写
  13. python导入excel加入折线图_excel表格中怎么设计炫酷折线图
  14. 数据结构练习题——线性表(二)
  15. tableau可视化图表及仪表板设计
  16. 顾客价值层级-名词解释06
  17. ADS-B及雷达显示终端8.0
  18. OpenGL编程轻松入门之使用颜色
  19. 前端基础篇之CSS世界
  20. 分享一下自己的用的几个网站 嘿嘿嘿

热门文章

  1. [附源码]PHP计算机毕业设计电影院售票系统论文(程序+LW)
  2. 畸变矫正及像素损失分析
  3. 濮阳php培训,“学习时代楷模,成就出彩人生” 师德师风演讲稿
  4. php unset方法,php – unset()在类方法中不起作用
  5. 软件测试中的面向对象测试,面向对象编写测试用例
  6. android蓝牙手环连接不上,华为荣耀畅玩手环连不上蓝牙怎么办
  7. 基于深度学习的智能问答
  8. Python黄金相关性市场探析——如何利用相关性寻找最佳建仓时机!
  9. jQuery如何判断是否拥有某属性以及添加移除(先判断有没有)某属性
  10. 30CrMnSiA介绍