#include <iostream>
#include <cstdio>
#include <vector>
#include <cstring>
#include <queue>
using namespace std;
int need[30],dis[30],provide[30],ind[30];
const int INF=1000000000;
bool vis[30];
struct Node
{
int v,w;
};
vector<Node> g[30];
void solve(int k)
{
for(int i=0;i<=24;i++)
g[i].clear();
for(int i=1;i<=24;i++)
{
Node temp;
temp.v=i-1;
temp.w=-provide[i];
g[i].push_back(temp);
temp.v=i;
temp.w=0;
g[i-1].push_back(temp);
}
for(int i=9;i<=24;i++)
{
Node temp;
temp.v=i;
temp.w=need[i];
g[i-8].push_back(temp);
}
for(int i=1;i<=8;i++)
{
Node temp;
temp.v=i;
temp.w=need[i]-k;
g[i+16].push_back(temp);
}
Node temp;
temp.v=24;
temp.w=k;
g[0].push_back(temp);
}
bool spfa(int k)
{
solve(k);
for(int i=1;i<=24;i++)
{
vis[i]=false;
dis[i]=-INF;
ind[i]=0;
}
queue<int> q;
q.push(0);
dis[0]=0;
ind[0]=1;
vis[0]=true;
while(!q.empty())
{
int u=q.front();
q.pop();
vis[u]=false;
for(int i=0;i<g[u].size();i++)
{
int v=g[u][i].v,w=g[u][i].w;
if(dis[v]<dis[u]+w)
{
dis[v]=dis[u]+w;
if(!vis[v])
{
vis[v]=true;
ind[v]++;
if(ind[v]>=24)
return false;
q.push(v);
}
}
}
}
if(dis[24]==k)
return true;
else return false;
}
int main()
{
//freopen("input.txt","r",stdin);
int t;
scanf("%d",&t);
while(t--)
{
memset(provide,0,sizeof(provide));
for(int i=1;i<=24;i++)
{
scanf("%d",&need[i]);
}
int n;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
int temp;
scanf("%d",&temp);
provide[temp+1]++;
}
bool ok=false;
for(int i=0;i<=n;i++)
{
if(spfa(i))
{
printf("%d\n",i);
ok=true;
break;
}
}
if(!ok)
printf("No Solution\n");
}
}
相关推荐
Delphi 12.3 精简绿色版下载
Delphi精简绿色版基于原版安装,去掉了InterBase、法语、德语、日语,只保留了Delphi Windows 32和Delphi Windows 64桌面开发,其余部分未做任何修改。Delphi精简绿色版不含任何破解,仅供学习和研究,24小时后请自行删除,如需继续使用Delphi,请购买正版。绿色版基于原版安装,未做任何精简和修改。绿色版不含任何破解,仅供学习和研究,24小时后请自行删除,如需继续使用RAD Studio,请购买正版。
发生系统错误 1275.此驱动程序被阻止加载
最近在学校windows内核编程,参考的书籍是寒江独钓,然后我就按照书籍上面的步骤一步一步来进行操作,一切进展的很顺利,但是到了利用cmd开启first服务的时候,发生了错误:发生系统错误1275.此驱动程序被阻止加载,于是我就开始google,都说什么开机按F8进入禁用驱动程序签名强制和关闭Windows 7系统中的驱动签名强制要求,关闭强制驱动签名的命令为: bcdedit.exe -set
数学概念 | 旋转矩阵、欧拉角、四元数
旋转矩阵、欧拉角、四元数概念及相关运算;
(十六)Modeling Long- and Short-Term Temporal Patterns with Deep Neural Networks(LSNet)
相关PPT已经上传,可以在我上传的资源里看到,可免费下载 论文信息 2018 SIGIR(CCFA) 作者单位:CMU(Carnegie Mellon University卡内基梅隆大学) 多元时间序列预测 论文链接:Modeling Long- and Short-Term Temporal Patterns with Deep Neural Networks 代码链接:https://github.com/laiguokun/LSTNet 解析论文的参考的论文: 参考一:https://zhuanl
机器人控制入门
机器人控制入门 对于工科领域来说,脱离实践的学习都是肤浅的,对于控制这种强调经验的技术更是如此。如果去问一个程序员怎么学习一块技术,他必然让你去多编程。机器人领域也是。如果想把基本功打扎实,那么实践更是必不可少了。 机器人控制有三个元素:控制器(算法),执行器(电机),传感器; 控制的本质就是将规划系统的指令作为输入信息,将传感器探测得到的状态信息和导航系统的定位
保姆级教程:在PX4 Gazebo仿真中为Iris无人机挂载Intel D435i深度相机(含完整配置流程)
本文提供在PX4 Gazebo仿真环境中为Iris无人机挂载Intel D435i深度相机的完整配置流程,涵盖环境准备、模型部署、插件安装及调试技巧。通过详细步骤和常见问题解决方案,帮助开发者快速搭建深度相机仿真环境,适用于无人机视觉开发与算法测试。
HDU 1275(两车追及或相遇问题)
每次两车相遇时和追及到时(即两车在同一位置)都算作一次“重合”,可知两者的公式为: 相遇时间:time = (2*n - 1) * L /(Va + Vb) (n=1,2,3.......) 追及时间:time = (2*n - 1) * L /fabs(Va-Vb) (n=1,2,3.......) (本题建议使用 scanf 和 printf,cin 和 cout 可能...
卡尔曼滤波器中的Q,R
对于系统状态的估计(滤波结果)所使用的信息来源于两个方面,一个是对系统状态演变模型的了解,包括系统转移矩阵和输入控制矩阵,输入孔质量等,另一方面来自于对系统状态的观测量。从上面公式来看,真正所要滤波得到的结果来自于公式(4)中的系统状态估计值x的某些分量,公式(4)的结果是由公式(1)所得到的状态预测值和来自观测量y计算得到的。所以,在不同算法中,R, Q的取值根据反应的不同量纲,可以有很大的变化,但它们的比值会决定了滤波值应该更多来自于系统模型演化的信息,还是来自于观察信号信息。
51Nod 1275 - 连续子段的差异(单调队列)
【题目描述】 【思路】 固定左端点 iii,向右寻找一个最远的右端点 jjj ,使得区间 a[i,j]a[i,j]a[i,j] 中的最大值减去最小值的差 <=k<=k<=k 同时 a[i,j+1]a[i,j+1]a[i,j+1] 中的最大值减去最小值的差 >k>k>k,这样一来 [...
读懂ARM汇编程序,你只差这篇!保姆级教程(附完整示例剖析)!
ARM汇编中的符号、标号、伪操作有哪些?C语言和汇编语言如何混合编程?GNU ARM汇编和ARM汇编的区别有哪些?
51智能小车(双轮)
前几天接了个小单子,是一个基于51单品机的作品,发现自己对小车的认识还是不太🆗。也算是完成了任了的;欢迎各位小伙伴来多多交流,大家一起进步。最后有需要单片机课程设计的小伙伴滴滴我哦(有偿)。企鹅:2397746994。
SpringMVC小白入门学习笔记--三层架构,mvc模型,优势,组件,注解
目录1.三层架构2.mvc模型3.SpringMVC 是什么4.SpringMVC 在三层架构的位置5.SpringMVC 的优势6.SpringMVC 和 Struts2 的优略分析7.常用组件8. RequestMapping注解9.常用注解 1.三层架构 我们的开发架构一般都是基于两种形式, 一种是 C/S 架构,也就是客户端/服务器, 另一种是 B/S 架构,也就 是浏览器服务器。 在 JavaEE 开发中,几乎全都是基于 B/S架构的开发。 那么在 B/S架构中,系统标准的三层架构 包括:表现层、
VB摄像头监控
该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制
Error 1275 - 此驱动程序被阻止加载
0 用DriverMonitor加载一个驱动准备调试,出现下图; 现摘录网上相关论述如下; 1 遇到驱动程序阻止加载,有多种原因,可以参考如下解决方法: 方法一: 1.右键桌面上的“计算机”→“属性”。 2.选择左边选项卡的“高级系统设置”。 3.切换到左边的“硬件”选项卡→选择第二个“设备安装设置”。 4.在弹出来的窗口选择“否”→第
Outlook Express 6 (OE6) for Win7/Win8/Win10
英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。
Statistics and Machine Learning Toolbox
Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具
HDU1529/POJ1275 Cashier Employment(差分约束+二分答案)
题意:有家24小时营业的超市,现在给出每个小时需要的员工数Ri(i = 0, 1, 2, ..., 23),Ri表示从时刻i开始的一个小时内需要的员工数。现在有N名员工可以上岗,每人都有一个固定的上岗时间,且每个人只会在上岗之后固定工作八个小时,不会换班。求在满足人数要求的前提下,可以安排的最少员工数。可能无解。 思路:真是一个思维好题。 设ai为第i小时实际上岗的人数,Si为前i小时一共上岗...
VC中sqlite的使用
在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示
吹爆系列:深入探索Android布局优化大科普
Python实战社群Java实战社群长按识别下方二维码,按需求添加扫码关注添加客服进Python社群▲扫码关注添加客服进Java社群▲作者丨jsonchao来自丨掘金https://ju...
第九章 动态规划-1275:【例9.19】乘积最大
1275:【例9.19】乘积最大 时间限制: 1000 ms 内存限制: 65536 KB 【题目描述】 今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目: 设有一个长度为N的数字串,...
第11届蓝桥杯青少组C++最后一轮选拔赛真题回忆版
一、选择题(共150分,每题30分) 1 下面哪个密码最安全 A. 111111 B. 123456 C. qwerty D. Z2a8Q1 答案:D不解释。 2.如果今天是星期六,再过60天是星期几 A. 星期三 B. 星期四 C. 星期五 D. 星期六 答案:A。 分析:可利用周期。(6 + 60 % 7) % 7 = 3 3.90到100之间有几个素数 A. 0 B. 1 C. 2 D. 3 答案:B 分析:只有97一个数 4.下列几个32位IP地
POJ 1275 差分约束
传送门 题意: 有一个商店,给出了这个商店一天中每个小时所需要的最少收银员数量R[i]R[i]R[i]。 有nnn个求职者,每个求职者有一个开始工作时刻t[i]t[i]t[i],在t[i]t[i]t[i]时刻后的八小时,这个求职者都在工作。 问老板最少需要雇佣多少个员工,满足商店营业的条件。 思路 构造差分约束系统。(以下下标均从1开始) 令S[i]S[i]S[i]表示前 iii 个小时在工作的员...
leet1275: 找出井字棋的获胜者
直接将坐标弄成 转换一下即可 public static String tictactoe(int[][] moves) { Set<Integer> a = new HashSet<>(); Set<Integer> b = new HashSet<>(); for(int i=0;i<mov...
(腾讯 - 一面)2020腾讯暑期实习面试
全程两小时,无死角吊打我,java一点没问 链表和数组有什么异同及其应用场景,map如何实现,及其应用场景(我寻思我除了写算法题用过,其他还有啥场景吗) hash的冲突如何解决,除了拉链和线性探测还有哪些,具体应用场景 红黑树会吗?讲一遍,不会 排序有哪些?我全讲了一遍 堆排,快排,归并(口述) 平常在哪用过排序?(写题?其他的我不知道了) 二叉树的公共节点(口述) 用队列实现栈(口述) leetcode34 写完了问我如何编写测试用例? 进程线程异同及应用场景 进程的整个流程(如何启动,怎么分配内存?)
LeetCode-Python-1275. 找出井字棋的获胜者(模拟法)
A 和B在一个3x3的网格上玩井字棋。 井字棋游戏的规则如下: 玩家轮流将棋子放在空方格 (" ") 上。 第一个玩家 A 总是用"X" 作为棋子,而第二个玩家 B 总是用 "O" 作为棋子。 "X" 和 "O" 只能放在空方格中,而不能放在已经被占用的方格上。 只要有 3 个相同的(非空)棋子排成一条直线(行、列、对角线)时,游戏结束。 如果所有方块都放满棋子(不为空),游戏也...
kaggle等算法比赛的合奏方法Ensemble(全)
第一种(多输出回归问题) import numpy as np # linear algebra import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv) from scipy.stats import mode import pandas as pd # Input data files are available in the "../input/" directory. # For example, running
IDEA 远程调试 Spring Boot 源码
一)、查看关于-agentlib命令 在终端命令行中输入"java"就能看到"-agentlib"命令 二)、关于-agentlib的详细使用说明 根据上边提示的文字,我们可以输入以下命令来查看关于-agentlib的详细使用 java -agentlib:jdwp=help 我们一般会使用到前面列举的四个选项,transport的值为dt_socket。 如果是本地环境,address可以不用加ip地址 运行以下命令,就可以让jar以远程调试的形式启动,会监听调试器的连接 java -agent
POJ1985 Cow Marathon (DP/BFS 树的直径) #by Plato
http://poj.org/problem?id=1985 题意:给一棵树,求树的直径 方法一)tree-DP 类似HDU2196,可以参见: http://www.cnblogs.com/celia01/archive/2012/07/30/2615842.html #include #include #include #include #include using
HDU 3691 Nubulsa Expo(全局最小割)(10福州B题)#by zh
这题给出一个无向图和一个源点,让你求从这个点出发到某个点最大流的最小值。由最小割最大流定理,最全局最小割就可以了,但是因为我没有模版所以这题就悲剧了……之前找到了一个模版改半天没改好,后来发现只要改一个地方就行了,AC了发现速度还挺快的,代码也不长,嗯,这个模版要收藏#include #include #include using namespace std; const int MAXN = 3
HDU 4435 charge-station(12天津E题)#by zh
今天做天津题的时候感觉特别困,思路也没想清楚,一开始以为是费用流,后来发现有贪心的性质,枚举验证就可以了,但是不知道怎么去验证,之前写了个dfs,但是由于每个点不止能经过一次,所以过不了样例,看了题解后才知道要从源点开始判断到其他点的距离,如果到一个非加油站的点的距离小于等于d的话这个点就是可到达的,如果到一个加油站距离小于d的话也可以到达。之前一直没想到这个性质,伤不起……#include #
4308



被折叠的 条评论
为什么被折叠?



