当前位置: 首页 > news >正文

题解:ABC277C - Ladder Takahashi

题解:ABC277C - Ladder Takahashi

·题目

链接:Atcoder。

链接:洛谷。

·难度

算法难度:普及。

思维难度:入门。

调码难度:入门。

综合评价:简单。

·算法

深度优先搜索+简单图论

·思路

把每个楼层看做是图的每个节点,用dfs从1开始深度优先遍历整个图,在经过每个节点的同时打擂台求出编号最大的节点的编号,最终输出该编号。

·代价

O(n)。事实上在输入的边里没有提及的全是孤点,所以真正能够遍历到的最多只有2n个点,因此dfs在去重(不重复经过一个相同的点)后时间复杂度为o(n)。

·细节

对于边的存储和dfs去重时是否经过的判定,我们分别采用map套vector,以及map或离散化(本人采用map)处理。

·代码

#include<bits/stdc++.h>
#define N 220000
using namespace std;
map<int,vector<int>>edge={};
map<int,bool>beto={};
int ans=0,n=0;
inline void dfs(int node);
int main(){scanf("%d",&n);for(int i=1;i<=n;i++){int a=0,b=0;scanf("%d%d",&a,&b);edge[a].push_back(b);edge[b].push_back(a);}dfs(1);printf("%d\n",ans);return 0;
}
inline void dfs(int node){ans=max(ans,node);if(beto[node]==true){return;}beto[node]=true;for(auto i:edge[node]){dfs(i);}
}

·注意

洛谷评测如果UKE,就说明RemoteJudge炸掉了,过一段时间(几分钟到几年不等)就好了。

http://www.lryc.cn/news/127378.html

相关文章:

  • 7.11 Java方法重写
  • Android Stodio编译JNI项目,Cmake出错:Detecting C compiler ABI info - failed
  • 6.2 Spring Boot整合MyBatis
  • 在CentOS 7上使用kubeadm部署Kubernetes集群
  • 这6个免费设计素材网站,设计师都在用,马住
  • uni-app引入sortable列表拖拽,兼容App和H5,拖拽排序。
  • Redis-内存淘汰算法
  • Git 合并分支时允许合并不相关的历史
  • 世界上最著名的密码学夫妻的历史
  • 二维码网络钓鱼攻击泛滥!美国著名能源企业成主要攻击目标
  • 前端面试题-CSS
  • 6.1 安全漏洞与网络攻击
  • STM32--EXTI外部中断
  • Python + Selenium 处理浏览器Cookie
  • 文件的导入与导出
  • [C++] string类的介绍与构造的模拟实现,进来看吧,里面有空调
  • 【Apollo】赋能移动性:阿波罗自动驾驶系统的影响
  • Camunda 7.x 系列【19】表达式语言
  • 详解RFC 793文档-4
  • ubuntu16编译内核源码并替换
  • AI 绘画Stable Diffusion 研究(九)sd图生图功能详解-老照片高清修复放大
  • Linux系统安装Google Chrome
  • 带你了解SpringBoot支持的复杂参数--自定义对象参数-自动封装
  • Raspberry Pi Pico RP2040制作低成本FPGA JTAG工具
  • 【工具】Python从临时邮箱获取验证码
  • 时序预测 | MATLAB实现基于GRU门控循环单元的时间序列预测-递归预测未来(多指标评价)
  • 在本地搭建WAMP服务器并通过端口实现局域网访问(无需公网IP)
  • Redis之删除策略
  • SpringBoot的配置文件以及日志设置
  • 【Java集合框架面试题(30道)】