首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

二鼠打洞

1 问题 有一堵十尺厚的墙,两只老鼠从两边向中间打洞。大老鼠第一天打一尺,小老鼠也是一尺。大老鼠每天的打洞进度是前一天的一倍,小老鼠每天的进度是前一天的一半。...第二行输出2个浮点数,分别为小鼠和大鼠打洞的距离,单位为尺,保留小数点后1位数字。Round(f,1)为浮点数f 保留一位小数。...day, time = 1, 1, 0, 1 #大老鼠进度,小老鼠进度,相遇时间,第一天时间 distance_of_rat, distance_of_mouse = 0, 0  # 大老鼠和小老鼠的打洞距离...while n > 0:     if n - mouse - rat < 0: #第一天打洞完成         time = n / (mouse + rat)    #算出需要时间     n ...#时间过去一天 print(day) print(round(distance_of_mouse, 1), round(distance_of_rat, 1)) 3 结语 这是一道数学题,据题目描述,打洞的速度分为第一天和后几天

24910
您找到你想要的搜索结果了吗?
是的
没有找到

golang 源码分析(27)p2p udp 打洞

1、打洞解决了什么问题? 我们平常使用的一般都为私有ip,但是私有ip之间是不能直接通信的,如果要进行通信只能通过公网上的服务器进行数据的转发,难道我们每次发送数据都要经过公网上的服务器转发吗?...此时就需要我们的打洞技术的出现了,打洞的出现解决了私有ip之间直接通信的问题(还是需要经过一次公网服务器) 例如:QQ中的聊天就广泛的使用到了打洞技术 <!...),本文讲到的路由均是以NAPT为工作模式,这并不影响对打洞。...通过打洞服务器,将用户A映射的IP、端口信息告诉用户B即可。 如何解决第二个问题?...如果打洞服务器首先告诉用户A先发一条信息给用户B(用户A得知用户B的地址信息也是通过打洞服务器),注意此时用户B是收不到的,用户B的路由同样会进行丢弃,但是这并不要紧,因为用户A发了这条信息后,用户A的路由就会记录关于用户

73610

搜狐视频P2P技术揭秘 – 流程篇

数据传输单位 9.2 数据校验 1 协议 无论哪种Peer,使用的P2P协议都是UDP,因为对NAT打洞来说,UDP的打洞成功率比TCP高。...7 打洞,搜狐影音 7.1 搜集Candidates P2P Client使用了ICE协议进行打洞,需要先获取: Local Candidate,本地地址/端口; Mapped Candidate,出口映射地址...这个请求实际上就是让Peer启动打洞的请求; 7.2 Peer搜集、响应Candidates 与下载端一样,上传端Peer收到启动打洞的请求后,先创建一个udp socket绑定一个本地端口,并用这个socket...8 打洞,flashp2p Flash Peer直接调用librtmfp的连接接口,由librtmfp使用rtmfp协议完成打洞过程,其过程与搜狐影音的打洞过程比稍有不同。...9 请求数据 经过以上步骤,P2P下载端和上传端打洞成功,建立了一条UDP的通道,就可以开始传输数据。

52720

WebP2P 让你的直播免流

在穿透时,我们不仅需要考虑 NAT 还需要考虑到集群机器的防火墙设定,如果防火墙限制了 UDP 打洞,那么我们还需要切换为 TCP 打洞(TCP 打洞一般会慢一点)。...WebRTC 就是用来解决这一问题的标准模板,通过 STUN/TURN Server 来实现打洞穿透。 WebRTC 打洞流程 这里,我们按照一个比较常见的情况作为模板讲解一下。...B 往 A 发送一个打洞包,此时,已经在 B 的 NAT 上留下到 A 的 打洞 session。但是,由于该包没有 A NAT 的 session 记录,会被 A 拒绝掉。...本身和打洞并没有太大的关联。...WebRTC 打洞成功后,我们就可以利用这个打洞包,根据用户的种子资源数、上行带宽、下载进度来判断 P2P 传输的资源。

1.9K51

对IM的一点小思考

与服务器转发不同,点对点的通讯是可能需要内网穿透的(不同局域网下的主机A访问到主机B),我们内网访问公网IP(腾讯的服务器)是容易的, 但是我们要实现访问内网却不是那么简单, 我想大家都听过内网穿透,打洞这些词...如果需要打洞的两台主机在同一个NAT下,那么就没有打洞的必要,使用局域网IP即可完成P2P,即使用打洞可能也没效果, 一般路由器会拒绝掉这种回路的UDP包, 而如果主机不在同一个NAT下,那么就有打洞的必要了...(对称型NAT有些特殊,无法完成打洞,因为每次建立连接端口都会发生变化, 难以实现P2P,补充方案是:端口预测) 下面再说打洞的步骤 主机A,主机B,服务器S 主机A发送请求给服务器S,建立连接 A... S 主机B发送请求给服务器S,建立连接 B S 主机A发送请求给服务器S,与B进行P2P连接 服务器S发送打洞请求给B,B主动发送一条消息给A,此时由于A所处的NAT不信任B,拒绝B...但是如果端口变化可以预测,那么应该也可以打洞成功(但是我用手机热点, 使用UDP打洞没有成功过)。 ?

79240
领券