有n只蚂蚁在一根木棍上,蚂蚁们只知道距左端的距离,棍子的长度,但不知道他们的朝向,蚂蚁们走到端点的时候会落下木棍,求所有蚂蚁们走过的最短和最长路程。
本题目看似很难,其实很简单,就下几行代码。自己模拟一下过程就可以发现可以将蚂蚁间走过的路程互相补在一起的话。
若有n只蚂蚁。
Sn = n只蚂蚁走过的路程总和; an = 棍子长度 - 此蚂蚁距某端的最短距离;
Sn = an的前n项求和
在代码中 int x[n]; 之所以可以编译的原因是在之上有
int n,length;
scanf("%d%d",&length,&n); 此时的n已不为未知数
用到的算法有累加 min = min + x[i]; max = max + (length - x[i]); 其实这也不算算法吧.... --==--
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,length;
scanf("%d%d",&length,&n);
int x[n];
int i;
int max = 0,min = 0;
for(i = 0;i < n;i++){
scanf("%d",&x[i]);
}
//默认数组内的元素都是从小到大的排列
for(i = 0;i < n;i++){
if(x[i] > length - x[i]){
x[i] = length - x[i];
}
min = min + x[i];
max = max + (length - x[i]);
}
printf("min = %d\n",min);
printf("max = %d\n",max);
return 0;
}
有n只蚂蚁在一根木棍上,蚂蚁们只知道距左端的距离,棍子的长度,但不知道他们的朝向,蚂蚁们走到端点的时候会落下木棍,求所有蚂蚁们走过的最短和最长路程。相关推荐
- 【题目】一根长度为M厘米的木棍上有n只蚂蚁,每只蚂蚁要么朝左爬,要么朝右爬,速度为每秒1厘米。当两只蚂蚁对撞时,二者同时掉头(掉头时间忽略不计)。给出每只蚂蚁的初始位置和朝向,计算T秒后每只蚂蚁的位置
文件名:[作业] 作者:〈漆黑〉 描述:〈 一根长度为M厘米的木棍上有n只蚂蚁,每只蚂蚁要么朝左爬,要么朝右爬,速度为每秒1厘米.当两只蚂蚁对撞时,二者同时掉头(掉头时间忽略不计).给出每只蚂蚁的初始 ...
- 1.1.5 蚂蚁。一根长度为L厘米的木棍上有n只蚂蚁,每只蚂蚁要么朝左爬,要么朝右爬,速度为1厘米/秒。
蚂蚁 题目来源 :<算法竞赛入门经典--训练指南>/刘汝佳,陈锋编著 一根长度为L厘米的木棍上有n只蚂蚁,每只蚂蚁要么朝左爬,要么朝右爬,速度为1厘米/秒.当两只蚂蚁相撞时,二者同时掉头( ...
- 一个球从100米高度自由落下,每次落地后反弹回原高度的一半; * 再落下,求在第几次之后反弹高度小于0.1米, * 并计算在这一次落地时共经过多少米?...
package com.db2;/*** 一个球从100米高度自由落下,每次落地后反弹回原高度的一半: * 再落下,求在第几次之后反弹高度小于0.1米,* 并计算在这一次落地时共经过多少米?* * @ ...
- /* * 编程第二题(20分): 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第十次落地时,共经过多少米?第十次反弹多高? */
题目: /* * 编程第二题(20分): 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下.求它在第十次落地时,共经过多少米?第十次反弹多高? */ 我是用java做的 public ...
- 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 * 第10次落地时,共经过多少米?第10次反弹多高?
package Day03;/*** 第三题:* 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在* 第10次落地时,共经过多少米?第10次反弹多高?* <p> ...
- 萌新的Python练习菜鸟100例(十八)一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
题目: 一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? 分析: · 用户输入层数和数字: · 使用for i in range ...
- Java题-一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?
题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高? 第一种: public class Dome10 {public st ...
- 4.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? 解题思路:已知小球会反弹,反弹回原高度的一半,所以的在第一次落下后会反弹50米 ...
- 如何用python实现题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
python实现 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高? 题目分析 第一次下落的距离是100米,反跳回原高度的 ...
最新文章
- 查看存储过程死锁的存储过程
- AI算法工程师必备技术,快快积累!
- 隐式调用 Intent 大全
- tensorflow-eagerAPI
- [转]C++的坑真的多吗?
- #if DEBUG 和 if (env.IsDevelopment()) 的用法区别
- 服务器返回值 解释 ajax提交方式 后台数据刷进前端
- 群晖 mysql 自动备份_宝塔定时备份网站及数据库至群晖FTP存储空间
- Android Handler机制之总目录
- 总数量超过五十个,史上最全的爬虫项目集合
- 信号与系统实验二 信号运算的MATLAB 实验
- 优化设计-外点惩罚函数法-MATLAB编程
- 知识点九:散列表(中)
- [leetcode每日一题2021/5/8]1723. 完成所有工作的最短时间
- 关于不锈钢管TIG+MAG
- Unity|一键复制log日志|小技巧
- 模拟电路实验 01 - | 基本共射放大电路
- 电商API店铺订单接口(代码对接教程)
- Anaconda 安装使用
- 人工智能知识全面讲解:初识生成对抗网络