
2582。把枕头递过去
简单
有 n 个人站在一排,标记为 1 到 n。队伍中的第一个人最初拿着一个枕头。每一秒,拿着枕头的人都会把它传给队列中的下一个人。一旦枕头到达队伍的末端,方向就会改变,人们继续以相反的方向传递枕头。
给定两个正整数n和time,返回time秒后抱枕头的人的索引。
示例1:
五秒后,第二个人拿着枕头。
示例2:
两秒后,第三个人拿着枕头。
示例3:
限制:
解决方案:
类解决方案{
/*** @param 整数 $n
* @param 整数 $time
* @return 整数*/
函数 passThePillow($n, $time) {
$方向= 1; // 1 为前进,-1 为后退
$当前= 0; // 从第一人称开始
for ($i = 0; $i < $time; $i++) {
$当前+=$方向;
if ($current == $n - 1) {
$方向=-1; // 当到达最后一个人时将方向改为向后
} elseif ($当前== 0) {
$方向= 1; // 当到达第一个人时改变方向为前进
}
}
返回$当前+ 1; // 转换为从 1 开始的索引
}
}
以上就是2582.递枕头的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号