题目简化和分析:

这题看着玄胡很水实际。

我们需要做什么?

  • 只需对每个工厂周围的面包店遍历一遍打擂台取最小
  • 注意只对面包店遍历,所以对工厂设标记
  • 如果打完擂台发现 \(ans=inf\) 则说明全是工厂

Solution:

#include<bits/stdc++.h>

using namespace std;
typedef long long ll;
const int N=1e5+50; int n,m,k; struct edge{
int to,dis,next;
}e[N<<1]; int head[N<<1],a[N],cnt; void add_edge(int u,int v,int w){
++cnt;
e[cnt].to=v;
e[cnt].dis=w;
e[cnt].next=head[u];
head[u]=cnt;
}
bool vis[N];
int main()
{
scanf("%d%d%d",&n,&m,&k);
for(int i=1;i<=m;++i){
int u,v,w;
scanf("%d%d%d",&u,&v,&w);
add_edge(u,v,w);
add_edge(v,u,w);
}
for(int i=1;i<=k;++i){
scanf("%d",&a[i]);
vis[a[i]]=1;
}
int ans=INT_MAX;
for(int i=1;i<=k;++i){
for(int j=head[a[i]];j;j=e[j].next){
int y=e[j].to;
if(vis[y]) continue;
ans=min(ans,e[j].dis);
}
}
printf("%d\n",ans==INT_MAX?-1:ans);
}

CF707B的更多相关文章

  1. 【CF707B】Bakery(想法题)

    题意: 有N个城市,M条无向边,其中有K个城市是仓库 现在要在非仓库的城市中选择一家开面包店,使得其最少与一个仓库联通,且到所有仓库距离的最小值最小 (1 ≤ n, m ≤ 10^5, 0 ≤ k ≤ ...

随机推荐

  1. 一文了解Go语言的I/O接口设计

    1. 引言 I/O 操作在编程中扮演着至关重要的角色.它涉及程序与外部世界之间的数据交换,允许程序从外部,如键盘.文件.网络等地方读取数据,也能够将外界输入的数据重新写入到目标位置中.使得程序能够与外 ...

  2. 强化学习实践:Policy Gradient-Cart pole游戏展示

    摘要:智能体 agent 在环境 environment 中学习,根据环境的状态 state(或观测到的 observation),执行动作 action,并根据环境的反馈 reward(奖励)来指导 ...

  3. 【小小demo】SpringBoot+Layui登录

    easy-login 基于layui 注册.登录简单实现,并他通过拦截器拦截未登录请求. 项目地址文章末尾 登录拦截器 SystemInterceptor preHandle在 Controller ...

  4. 使用Docker+PHP搭建苹果Maccms的影视站详细教程

    自己做博客站太难了,SEO太差自己都搜不到,原文地址求你点进去看:https://typecho.hanzhe.site/archives/88 说在前面 很早之前还没参加工作的时候,手头没钱,想要看 ...

  5. Python异常模块与包

    Python异常模块与包 一.了解异常 1.1 什么是异常 当检测到一个错误时,Python解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的"异常", 也就是我们常说 ...

  6. 《最新出炉》系列入门篇-Python+Playwright自动化测试-10-标签页操作(tab)

    1.简介 标签操作其实也是基于浏览器上下文(BrowserContext)进行操作的,而且宏哥在之前的BrowserContext也有提到过,但是有的童鞋或者小伙伴还是不清楚怎么操作,或者思路有点模糊 ...

  7. 如何编写难以维护的React代码?耦合组件

    如何编写难以维护的React代码?耦合组件 在许多项目中,我们经常会遇到一些难以维护的React代码.其中一种常见的情况是:子组件直接操作父组件方法,从而导致父子组件深度耦合.这样的实现让子组件过于依 ...

  8. Cobalt Strike 4.0系列教程

    https://blog.csdn.net/weixin_45745344/article/details/109279097

  9. C++多线程中互斥量的使用

    多线程中互斥信号量(Mutex)的使用 1.0 互斥量的基本概念 1.1 Example \(\quad\)首先我们要明白,为什么会有互斥信号量的出现,在多线程编程中,不同的线程之间往往要对同一个数据 ...

  10. 【教程】青少年CTF机器人使用教程

    前言 本期教程适用于版本号为2.0.1-Beta的青少年CTF机器人,其他版本可能与当前版本不同. 由于之前版本的机器人重构,所以我们细化了本次的机器人逻辑,并且对机器人的功能进行了一些升级. 机器人 ...