伟大的航线 [set / 代码待补]

伟 大 的 航 线 伟大的航线 线




正 解 部 分 \color{red}{正解部分}

题 意 : 题意: :

N o d e r Noder Noder 在穿越河流时不能停止, 所以出发的时间点决定了 N o d e r Noder Noder 是否能够通过河流, 问能够通过河流的最长持续时间.

下面考虑一艘船对 N o d e r Noder Noder 时间区间的影响, 设船头 t 1 t_1 t1 到达过河线, 船尾 t 2 t_2 t2, N o d e r Noder Noder t 3 t_3 t3 到达该船航道, 则从下图可以看出,

时间区间 [ t 1 − t 3 , t 2 − t 3 ] [t_1-t_3,t_2-t_3] [t1t3,t2t3] N o e d r Noedr Noedr 不能通过河流 .

这个结论对其他船来说也成立, 所以预处理出所有的这样区间, 使用 std::set<pair> 维护区间的 ∪ ∪ , 然后再求补集区间的最长长度即可 .


实 现 部 分 \color{red}{实现部分}

代码待补, 咕咕咕


  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是加入滑动速度的代码: ```batch @echo off set /a total_time=0 set /a slide_time=0 set /a slide_distance=0 set /a slide_count=0 :loop set /a slide_time=%random% %% 3 + 3 set /a total_time=%total_time% + %slide_time% rem 计算每个小段需要滑动的距离和时间 set /a slide_distance=900 set /a slide_count=%random% %% 5 + 5 set /a slide_distance=%slide_distance% / %slide_count% set /a slide_time=%slide_time% / %slide_count% rem 输出当前滑动信息 echo %slide_count% slides, %slide_distance% pixels per slide, %slide_time% seconds per slide, total %total_time% seconds rem 逐个滑动小段距离 for /l %%i in (1,1,%slide_count%) do ( rem 计算当前位置 set /a start_x=1000-%%i*%slide_distance% set /a end_x=%start_x%-%slide_distance% rem 模拟人的滑动操作,每隔一段时间滑动一小段距离 adb shell input swipe %start_x% 500 %end_x% 500 %slide_time% timeout /t %slide_time% >nul ) if %total_time% leq 12600 goto loop echo Done! ``` 这段代码在每次循环中固定滑动距离为900,并随机生成滑动次数。然后计算每个小段需要滑动的距离和时间。在滑动的过程中,我们使用了一个for循环来逐个滑动小段距离,同时使用timeout命令来模拟人的操作。每个小段滑动的时间是刚才计算出来的,这样就可以实现模拟人类操作的滑动速度。 需要注意的是,这段代码仍然需要在Windows环境下运行,并且需要安装adb工具和安卓模拟器。另外,为了使用随机函数,需要将代码保存为.bat文件,而不是普通的文本文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值