P2951 [USACO09OPEN] Hide and Seek S 题解
Problem
题目概述
给你一个无向图,边权都为 \(1\) ,求:离 \(1\) 号点最远的点的编号、最远的距离、有几个点是离 \(1\) 号点最远的。
思路
直接用:优先队列 \(BFS\),先求出 \(1\) 号点到每个点的最短路,存到 \(dis\) 数组中,然后再求 \(max(dis[i])\) ,就搞定了。
错误原因
- 审题 & 做法错误。
- 不要想得太过于复杂,比如将最短路转换为负数等等...
- 细心
- 注意开 \(Long Long\),因为答案有可能爆 \(int\) 。
代码
#include <iostream>
#include <algorithm>
#include <queue>
using namespace std;
typedef pair<int, int> PII;
typedef long long LL;
const int N = 2e4 + 10, M = 5e4 + 10;
priority_queue<PII, vector<PII>, greater<PII> > q;
struct node {
int to, next;
} a[M * 2];
bool f[N];
int pre[N], k;
LL d[N];
int n, m, x, y;
void add(int x, int y) {
a[++k] = (node) {y, pre[x]};
pre[x] = k;
}
void bfs() {
memset(d, 0x3f, sizeof(d));
q.push(make_pair(0, 1));
d[1] = 0;
while (!q.empty()) {
PII h = q.top();
int p = h.second;
q.pop();
if (f[p]) continue;
f[p] = true;
for (int i = pre[p]; i; i = a[i].next) {
int to = a[i].to;
if (d[p] + 1 < d[to]) {
d[to] = d[p] + 1;
q.push(make_pair(d[to], to));
}
}
}
}
int main() {
scanf("%d%d", &n, &m);
for (int i = 1; i <= m; i++) {
scanf("%d%d", &x, &y);
add(x, y);
add(y, x);
}
bfs();
LL ma = 0, cnt = 0;
for (int i = 1; i <= n; i++) ma = max(ma, d[i]);
for (int i = 1; i <= n; i++) if (d[i] == ma) cnt++;
for (int i = 1; i <= n; i++) {
if (d[i] == ma) {
printf("%d ", i);
break;
}
}
printf("%lld %lld", ma, cnt);
return 0;
}
P2951 [USACO09OPEN] Hide and Seek S 题解的更多相关文章
- 洛谷 P2951 [USACO09OPEN]捉迷藏Hide and Seek
题目戳 题目描述 Bessie is playing hide and seek (a game in which a number of players hide and a single play ...
- Luogu 2951 捉迷藏Hide and Seek
P2951 [USACO09OPEN]捉迷藏Hide and Seek 题目描述 Bessie is playing hide and seek (a game in which a number o ...
- USACO Hide and Seek
洛谷 P2951 [USACO09OPEN]捉迷藏Hide and Seek 洛谷传送门 JDOJ 2641: USACO 2009 Open Silver 1.Hide and Seek JDOJ传 ...
- [BZOJ1941][Sdoi2010]Hide and Seek
[BZOJ1941][Sdoi2010]Hide and Seek 试题描述 小猪iPig在PKU刚上完了无聊的猪性代数课,天资聪慧的iPig被这门对他来说无比简单的课弄得非常寂寞,为了消除寂寞感,他 ...
- BZOJ3402: [Usaco2009 Open]Hide and Seek 捉迷藏
3402: [Usaco2009 Open]Hide and Seek 捉迷藏 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 51 Solved: 4 ...
- BZOJ 3402: [Usaco2009 Open]Hide and Seek 捉迷藏
题目 3402: [Usaco2009 Open]Hide and Seek 捉迷藏 Time Limit: 3 Sec Memory Limit: 128 MB Description 贝 ...
- 3402: [Usaco2009 Open]Hide and Seek 捉迷藏
3402: [Usaco2009 Open]Hide and Seek 捉迷藏 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 78 Solved: 6 ...
- 【BZOJ1941】Hide and Seek(KD-Tree)
[BZOJ1941]Hide and Seek(KD-Tree) 题面 BZOJ 洛谷 题解 \(KD-Tree\)对于每个点搜一下最近点和最远点就好了 #include<iostream> ...
- 【BZOJ1941】[Sdoi2010]Hide and Seek KDtree
[BZOJ1941][Sdoi2010]Hide and Seek Description 小猪iPig在PKU刚上完了无聊的猪性代数课,天资聪慧的iPig被这门对他来说无比简单的课弄得非常寂寞,为了 ...
- 【BZOJ-1941】Hide and Seek KD-Tree
1941: [Sdoi2010]Hide and Seek Time Limit: 16 Sec Memory Limit: 162 MBSubmit: 830 Solved: 455[Submi ...
随机推荐
- 2023年郑州轻工业大学校赛邀请赛zzh
第一次参加线下赛体验很好,面包和酸奶很好吃.ABL三题难度超出我们的能力范围,没能写出来,C题在读完题后,我们三个简单交流了一下,确定思路后我写的代码,一次AC,很顺利.D题简单的01背包,但我在写代 ...
- 玩转 PI 系列-如何在 Rockchip Arm 开发板上安装 Docker Tailscale K3s Cilium?
概述 618 买了几个便宜的 Purple PI OH 开发板 (500 块多一点买了 3 个), 这个开发板类似树莓派,是基于 Rockchip(瑞芯微) 的 rx3566 arm64 芯片.如下: ...
- HTML超文本标记语言3
三.HTML表单标签 1.form标签 <form> form标签 name=表单名称,action=表单提交的地址,method=表单提交方式:get/post get/post详解: ...
- chrome pre 自动换行
问题引出 当我想要使用chrome的打印功能生成一份关于md的pdf版本的时候发现有的代码块没有自动换行,生成的PDF没有自动换行,导致部分信息无法阅读 处理方式 把有自动换行的部分处理一下,在md文 ...
- WebStorm: 配置React中useState自动补齐功能
配置如下 模板文本如下所示 const [$STATE$, $SET_STATE$] = useState($INITAL_STATE$) 编辑变量 SET_STATE文本如下所示 concat(&q ...
- 浏览器端模块化方式es module详解
在es module出现之前还有社区推出amd和cmd的规范,这两者还有其特定的编写方式,使用起来不算很方便.es module被官方推出来就成为了浏览器端实现模块化的一个很好的方案. 想要在浏览 ...
- [golang]标准库-json
前言 json数据格式通常包含两个操作:序列化(把对象转换成JSON数据类型)和反序列化(把JSON数据类型转换成对象),二者操作互逆. Go语言中相关标准库为encoding/json. 示例代码 ...
- redis集群:MASTER aborted replication with an error: NOAUTH Authentication required.
发现个问题:redis集群所在服务器,磁盘空间很快就被占满,使用 "du -sh *"查看每个文件夹的大小,发现redis集群三个从节点的日志文件占用空间很大. 下面记录问题排查及 ...
- Android RIL&IMS源码分析
一.需求 1.了解IMS相关知识体系 2.RILD 与 RILJ.IMS回调消息的机制 二.相关概念 2.1 IMS IMS全称是IP Multimedia Subsystem,中文意义为IP多媒体子 ...
- 【升职加薪秘籍】我在服务监控方面的实践(7)-业务维度的redis监控
大家好,我是蓝胖子,关于性能分析的视频和文章我也大大小小出了有一二十篇了,算是已经有了一个系列,之前的代码已经上传到github.com/HobbyBear/performance-analyze,接 ...