首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
妈妈说如果昵称太长是会被
2019-03-16 17:32
北京交通大学 C++
关注
已关注
取消关注
流星雨问题,
为什么不能dfs搜索能去的点,过的代码都是cmp。。。。。。。
愁死我了
提示
全部评论
推荐
最新
楼层
妈妈说如果昵称太长是会被
楼主
北京交通大学 C++
#include<bits/stdc++.h> #include<math.h> #include<map> #include<queue> #include<stack> #include<set> #include<map> #include<assert.h> #include <algorithm> #define ll long long #include <time.h> using namespace std; //clock_t Begin,End; //Begin = clock();printf("%dms\n",End-Begin); int father[2000005]; struct ss{ int next; int to; }arr[1000005]; int tot; void add(int a,int b){ arr[tot].next=father[a]; arr[tot].to=b; father[a]=tot++; } int vis[2000005]; int num[2000005]; int se[1000005]; int dfs(int t){ vis[t]=1; int tt=-1; for(int i=father[t];i!=-1;i=arr[i].next){ int to=arr[i].to; if(vis[to]==0){ tt=max(tt,dfs(to)); }else{ tt=max(tt,num[to]); } } if(tt==-1) return t; else return num[t]=tt; } int max(int a,int b){ return a>b?a:b; } int main(){ int n; scanf("%d",&n); int a,b; memset(father,-1,sizeof(father)); int r=0; for(int i=0;i<n;i++){ scanf("%d %d",&a,&b); se[++r]=a; add(a,b); } int sum=0; for(int i=1;i<=r;i++){ if(vis[se[i]]==0){ dfs(se[i]); sum=max(sum,num[se[i]]-se[i]); } // printf("%d\n",num[*ite]); } printf("%d\n",sum); return 0; } 出题人给的范围不够实际的数要比1000000大,要把数组开大, 数据过多导致set爆掉 dfs过了。
点赞
回复
分享
发布于 2019-03-16 20:02
欧阳龙
湖南师范大学 C++
所以说这题目想过,就只能按错的来,因为容忍一颗可以倒着跑的流星的话,所有过的代码就都是错的了。只能说是数据真的是错得离谱
点赞
回复
分享
发布于 2022-02-17 15:15
欧阳龙
湖南师范大学 C++
题目数据有错,你的第一份代码之所以过,是因为if(a>b) swap(a,b);这个部分,数据中的错误是有部分流星出现的时间x大于消失的时间y,而这是不可能的,你第二份代码正是因为没有这个比较交换部分才过了
点赞
回复
分享
发布于 2022-02-17 15:13
妈妈说如果昵称太长是会被
楼主
北京交通大学 C++
#include<bits/stdc++.h> #include<math.h> #include<map> #include<queue> #include<stack> #include<set> #include<map> #include<assert.h> #include <algorithm> #define ll long long #include <time.h> using namespace std; //clock_t Begin,End; //Begin = clock();printf("%dms\n",End-Begin); int father[1000005]; struct ss{ int next; int to; }arr[1000005]; int tot; void add(int a,int b){ arr[tot].next=father[a]; arr[tot].to=b; father[a]=tot++; } int vis[1000005]; int num[1000005]; set<int>se; int dfs(int t){ vis[t]=1; int tt=-1; for(int i=father[t];i!=-1;i=arr[i].next){ int to=arr[i].to; if(vis[to]==0){ tt=max(tt,dfs(to)); }else{ tt=max(tt,num[to]); } } if(tt==-1) return t; else return num[t]=tt; } int max(int a,int b){ return a>b?a:b; } int main(){ int n; scanf("%d",&n); int a,b; memset(father,-1,sizeof(father)); for(int i=0;i<n;i++){ scanf("%d %d",&a,&b); se.insert(a); if(a>b) swap(a,b); add(a,b); } int sum=0; for(set<int>::iterator ite=se.begin();ite!=se.end();ite++){ if(vis[*ite]==0){ dfs(*ite); sum=max(sum,num[*ite]-*ite); } // printf("%d\n",num[*ite]); } printf("%d\n",sum); return 0; }
点赞
回复
分享
发布于 2019-03-16 17:51
玄不救非,氪不改命
大连民族大学 后端工程师
dfs会超时的吧,数据太大了
点赞
回复
分享
发布于 2019-03-16 17:42
暂无评论,快来抢首评~
相关推荐
10-21 22:38
已编辑
门头沟学院 Java
别瞎纠结 offer去不去!
判断offer值不值得接,我觉得不用搞复杂理论,乱七八糟的,就从“钱够不够花”“活有没有价值”“未来有奔头没”“生活能不能兼顾”这几个实在方向研究一下,把这些点捋清楚,看你最看重哪个就把哪个放在前面,优先级高一些,基本就不会选错。1.看薪资:不只看月薪,得算“实际能落袋多少”实际到手多少钱薪资肯定要往高了争取,但别被表面数字忽悠,得把“明的暗的”都算明白。算“全年总收入”:除了基本工资,一定要问清年终奖(是“保底1个月”还是“正常能拿3-4个月”)、有没有绩效奖、签字费(入职给一笔钱,但可能要求干满1-2年)、可能有股票(大厂常用,得问清楚几年兑现完)。比如A厂月薪22k,年终奖1个月;B厂月...
从哪些方向判断这个off...
点赞
评论
收藏
分享
10-22 09:49
快手_快STAR广告引擎(准入职员工)
光峰科技内推,光峰科技内推码
结构工程师面试经验: 1. 自我介绍 2. 项目介绍 3. 使用的三维软件、仿真软件是什么? 4. 建的模型里几个零部件之间的约束方式 5. 对身边常见的一些产品的内部构件有什么了解? 6. 它们通过什么方式组装/连接? 7. 如果给你个鼠标让你设计,首先要了解什么参数和内容? 8. 对结构工程师岗位的认知 9. 未来的职业规划 10. 工作地点的选择 11. 家庭情况 12. 反问环节光峰科技2026届校园招聘进行中~【招聘岗位】光学 / 硬件 / 算法岗 / 产品研发类 / 技术研发类 / 产品类【我们提供】极具竞争力的薪酬回报机制+产品技术重大创新奖金、专利奖、国际三大工业设计奖等专项激...
点赞
评论
收藏
分享
10-10 14:40
香港城市大学 Java
27届日常实习简历求拷打
准备跑路了,实习太水了,只能写一个黑客松的项目,但感觉也很玩具,文档也没得偷,这个简历现在投后端日常有机会吗
Ccyk_03:
补药来大陆虐我们啊
简历中的项目经历要怎么写
点赞
评论
收藏
分享
昨天 12:37
厦门大学 驱动开发
嵌入式大厂面经
一、IIC需要几根线分别是什么线I2C通信协议需要两根线来进行传输,分别是SDA和SCL。这两根线是通过总线结构连接各个设备,并在设备之间进行数据和时钟信号的交互。SDA(串行数据线):SDA线被用于在设备之间传输数据。它是一个双向线路,在通信中用于发送和接收数据位。每个设备都通过开漏输出或三态缓冲器连接到SDA线,以实现数据的传输和接收。SCL(串行时钟线):SCL线是用于设备之间同步传输数据的时钟信号线。它由主设备控制,通过在SCL线上产生脉冲信号来同步数据传输。所有设备都在SCL上接收和解析来自主设备的时钟信号。总结起来,I2C通信协议只需要两根线:SDA用于数据传输,SCL用于时钟同步...
查看7道真题和解析
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
云智转正失败
1.4W
2
...
「潜力作者交流2群」开放报名啦!
9650
3
...
22岁程序猿小登的心酸回忆录
8907
4
...
测开简历求大佬拷打
5673
5
...
双9两段大厂0 offer
5043
6
...
求职低谷期我是怎么度过的
2871
7
...
学长,我得休息了,明天要面软*动力
2499
8
...
0offer圆满结束秋招
2223
9
...
国央企&银行笔试应该如何准备
2118
10
...
恭喜你顺利通过字节跳动2026校园招聘的考核!
1838
创作者周榜
更多
正在热议
更多
#
帮我看看,领导说这话什么意思?
#
15787次浏览
87人参与
#
牛友的志愿填报指南
#
33577次浏览
180人参与
#
快手技术岗信息交流阵地
#
137次浏览
0人参与
#
你的mentor是什么样的人?
#
12491次浏览
97人参与
#
毕业租房也有小确幸
#
140271次浏览
4491人参与
#
怎么给家人解释你的工作?
#
7637次浏览
57人参与
#
得物app工作体验
#
27171次浏览
61人参与
#
租房前辈的忠告
#
259179次浏览
7114人参与
#
国企还是互联网,你怎么选?
#
167649次浏览
1192人参与
#
求职中的尴尬瞬间
#
1682次浏览
25人参与
#
小红书求职进展汇总
#
120540次浏览
952人参与
#
薪资爆料
#
200023次浏览
1512人参与
#
校招泡的最久的公司是哪家?
#
10264次浏览
66人参与
#
求职低谷期你是怎么度过的
#
10231次浏览
199人参与
#
26届秋招公司红黑榜
#
24301次浏览
88人参与
#
从哪些方向判断这个offer值不值得去?
#
12922次浏览
159人参与
#
度小满求职进展汇总
#
11917次浏览
64人参与
#
你觉得mentor喜欢什么样的实习生
#
14852次浏览
392人参与
#
牛客树洞,我想对你说
#
4336次浏览
63人参与
#
还记得你第一次面试吗?
#
340057次浏览
3876人参与
#
机械人的秋招小目标
#
22607次浏览
217人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务