D. Race

article/2025/8/18 21:09:07

GDUT 2020寒假训练 排位赛三 D

原题链接

  • D. Race

题目

原题截图
outputstandard output
Bessie is running a race of length K (1≤K≤109) meters. She starts running at a speed of 0 meters per second. In a given second, she can either increase her speed by 1 meter per second, keep it unchanged, or decrease it by 1 meter per second. For example, in the first second, she can increase her speed to 1 meter per second and run 1 meter, or keep it at 0 meters per second and run 0 meters. Bessie’s speed can never drop below zero.

Bessie will always run toward the finish line, and she wants to finish after an integer amount of seconds (ending either at or past the goal line at this integer point in time). Furthermore, she doesn’t want to be running too quickly at the finish line: at the instant in time when Bessie finishes running K meters, she wants the speed she has just been traveling to be no more than X (1≤X≤105) meters per second. Bessie wants to know how quickly she can finish the race for N (1≤N≤1000) different values of X.

Input
The first line will contain two integers K and N.

The next N lines each contain a single integer X.

Output
Output N lines, each containing a single integer for the minimum time Bessie needs to run K meters so that she finishes with a speed less than or equal to X.

样例

input

10 5
1
2
3
4
5

output
6
5
5
4
4

题目大意

有一场k米赛跑,Bessie希望在跑过终点线的时候的速度为x,而每一秒才能增长或减少一个单位的速度,求跑完k米需要的最快时间。

思路

找规律
按照样例模拟一下画出v-t图像,可以看出,vt图像基本处于一个对称的状态,也就是说假设最大的速度为vmax,在跑步的过程中,速度从1增长到vmax再降到目标速度x,将该过程分为上升和下降两个阶段,我们只需要模拟跑步的前半部分的速度增加的过程即可。
速度从1开始增加,每一秒就提高一个单位的速度,并将该速度所跑过的路程加入到左半段的路程中;当速度增大到x后,若速度继续增加就应要考虑后半段减速的事情了,也就是在我们模拟到vmax后k米赛跑必然还要有从vmax减速到x的过程,那么从这时开始就应该将当前的速度所跑过的路程加入到后半段中。
那么达到vmax的条件就是当前的左半段路程与右半段路程和大于等于k,也就是说明已经达到了终点,跳出循环即可。

代码

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main()
{int k,n;cin>>k>>n;while(n--){int x;cin>>x;int l,r,t=0;l=r=0;for(int i=1;i;i++){if(l+r>=k){break;}l+=i;t++;if(l+r>=k){break;}if(i>=x){r+=i;t++;}}cout<<t<<endl;}return 0;
}

http://chatgpt.dhexx.cn/article/hKEjqqE0.shtml

相关文章

ROS智能车实现darknet_ros检测物体

文章目录 一、搭建智能车环境1、下载包以及编译1.1、下载源码包1.2、编译1.3、错误解决&#xff08;1&#xff09;、controllers相关&#xff08;2&#xff09;、driver_base相关&#xff08;3&#xff09;、ackermann_msgs相关&#xff08;4&#xff09;、Could not find a pa…

智能车仿真 —— 2020室外光电组仿真指导(一)

前言 今天推出了官方的仿真文件&#xff0c;我也参与了部分仿真模型的设计&#xff0c;提供一个简单的参考思路。 完整文章地址&#xff1a;古月居博客网站 模型下载地址 https://pan.baidu.com/s/1TFBTbCeyQMuKnxemCbyNSw 提取码: crm5 安装依赖工具 sudo apt-get instal…

教程 | 阿克曼结构移动机器人的gazebo仿真(五)

第四章、用xacro优化URDF并配置gazebo仿真插件 1►前言 上节用简易模型写了一个小车的URDF代码&#xff0c;这一节将用xacro对其进行优化&#xff0c;这里我并不打算用宏对参数进行封装&#xff0c;因为我个人觉得这样看起来会比较直观&#xff0c;方便读者阅读。 2►配置主x…

利用Gazebo搭建赛道,控制小车完成比赛(大学生智能车大赛室外光电组赛道仿真模拟)

ROS学习【18】-----利用Gazebo搭建赛道&#xff0c;控制小车完成比赛目录 一、 ROS仿真功能包下载编译1、racecar功能包下载2、安装该功能包运行需要的控件3、racecar功能包编译4、测试是否编译成功 二、 运行功能包自带的赛道1、运行赛道&#xff0c;控制小车进行位移2、进行g…

ROS智能车定位导航仿真(原赛道自主导航,构建地图再导航)

文章目录 0.视频演示1.智能车环境&#xff0c;空间&#xff0c;资源准备a.初始化b.克隆 racecar 源代码包&#xff0c;并编译(1)遇到问题&#xff1a;Could NOT find driver_base_DIR(2)遇到问题&#xff1a;Could NOT find OpenCV (missing: OpenCV_DIR)(3)随带把环境变量添加…

AR rc漂移车

文章目录 前言一、物料准备二、车辆安装三、舵机调试1.舵机控制原理2.舵机供电及连线3.PWM控制舵机 四、电机调试1.电机控制原理2.电机供电及连线3.PWM控制电机4.附 五、单片机独立供电六、蓝牙遥控 前言 前几天偶然看到了《马里奥赛车 Live:家庭巡回赛》这款运行在switch上的A…

ROS学习记录(二)阿克曼转向车运动学模型及在gazebo中搭建仿真环境

前言&#xff1a;该篇是ROS学习记录的第二篇&#xff0c;如果还没关注过之前文章的读者&#xff0c;如有需要可以通过下方传送门去看之前的文章&#xff1a; ROS学习记录&#xff08;一&#xff09; Plugin插件 这两天关注了古月老师的公众号&#xff0c;看到了其中一篇课程推…

(ROS)ROS智能车自主导航roslaunch racecar_gazebo racecar_runway_navigation.launch报错

前提&#xff1a; 修改修改racecar_runway_navigation.launch文件后&#xff0c;运行roslaunch racecar_gazebo racecar_runway_navigation.launch 出现红色报错。 ERROR: cannot launch node of type [move_base/move_base]: move_base ROS path [0]/opt/ros/indigo/share/ro…

用ROS来做无人测试平台系列之国外的一些RACECAR

MIT RACECAR&#xff0c;最早开始做racecar的&#xff0c;主要基于双目摄像头激光雷达: http://fast.scripts.mit.edu/racecar/hardware/ UPENN F1 TENTH&#xff0c;同MIT racecar特别像&#xff0c;不过很多东西需自己组装&#xff0c;电调模块需自己焊接: http://f1tenth.o…

多移动机器人(阿克曼小车)在gazebo中的配置

多移动机器人&#xff08;阿克曼小车&#xff09;在gazebo中的配置 前言 最近需要进行异构多机器人方面的工作&#xff0c;在之前的工作中已经实现了多麦克纳姆轮小车在gazebo中的仿真。 &#xff08;如何在Gazebo中实现多机器人仿真 https://www.guyuehome.com/4889&#xf…

记实现多racecar仿真过程中遇到的问题(一)

最近尝试过使用多turtlebot3仿真之后&#xff0c;想测试一下多Ackermann结构车的仿真效果&#xff0c;在一番寻找下将目光锁定到了MIT-racecar。但是在使用过程中遇到了许多问题&#xff0c;在此记录一下。 运行环境&#xff1a; Ubuntu18.04(虚拟机)&#xff0c;ROS-melodic…

HackTheBox You know racecar 格式化字符串漏洞pwn题目

题目网址&#xff1a; https://app.hackthebox.com/challenges/racecar解压密码为hackthebox 文件信息收集 file racecar这是一个32位的程序&#xff0c;动态链接的 checksec vuln防护都开着的&#xff0c;从上到下依次是 32位程序 全部RELRO 开启栈保护 启用数据执行防护…

什么是Race Condition?

简介 race condition是多线程的应用程序中经常遇到的问题&#xff0c;本文章接下来会解释什么是race condition&#xff0c;如何检测到它们以及如何解决这类问题。 Race condition 从定义来说&#xff0c;race condition是代码中一些执行结果取决于其执行的相对时间或者多线…

免费教程·开源 | 从零开始制作ROS无人竞速车RACECAR教程

一、课程前提 自动驾驶汽车即将成为交通出行的主流工具之一&#xff0c;它以计算机、现代汽车产业技术为基础&#xff0c;以数字化、智能化为依托实现自动化驾驶&#xff0c;学习自动驾驶需要了解架构、环境感知、行为决策、规划路径&#xff0c;多传感器融合等一系列技术&…

Racecar 基于ROS通信机制的多点导航实验

基于ROS通信机制的多点导航实验 一、实验目的二、实验环境三、实验原理四、实验内容五、实验步骤1.获取rviz发送目标点的topic&#xff1b;2.对已经建好的图获取相应目标点的坐标&#xff08;多个&#xff0c;即小车要去的目标&#xff09;&#xff0c;还没建图先完成建图&…

C语言的整数除法

c语言的整数除法是向下取整的。

C语言 从5~100之间找出能被5或7整除的数

从5~100之间找出能被5或7整除的数 算法分析&#xff1a;注意“或”的理解&#xff1a;或此或彼或彼此 #include "stdio.h" main( ) { int i;for(i5;i<100;i)if(i%50||i%70)printf("%d\t",i); }有伙伴问倒序输出&#xff1a; 在线编译C语言&#xff1a;…

C语言实现计算数字能否被3个数整除

C语言实现计算数字能否被3个数整除 编程实现&#xff1a;输入一个整数&#xff0c;判断它能否被3&#xff0c;5&#xff0c;7整除&#xff0c;并输出以下信息之一&#xff1a; ①能同时被3&#xff0c;5&#xff0c;7整除&#xff1b; ②能被其中两数(要指出哪两个)整除&#x…

C语言-求能被7或11整除的整数

本关任务&#xff1a;编写程序求[1&#xff0c;1000]范围内能被7或11整除&#xff0c;但不能同时被7和11整除的整数。按每行8个数&#xff0c;每个数占5个字符且以左对齐的格式进行输出。 #include<stdio.h> int main() {int i1;int count0;for(i1;i<1000;i){if((i%7…

c语言学习-判断一个数是否能被3整除

判断一个数是否能被3整除 在主函数中输入整型数据n,判断该数是否能被3整除&#xff0c;如果能被3 整除&#xff0c;输出“yes”,否则输出“no” 程序流程图&#xff1a; void main() { int a; printf("please enteraguess number:\n"); scanf("%d",&…