问题描述:

C语言编程 小明一家过桥问题

小明一家过一座桥,过桥的时候是黑夜,所以必须有灯,现在,

小明过桥需要2分钟,小明的弟弟要5分钟,

小明的爸爸要6分钟,小明的妈妈要9分钟,

小明的爷爷要13分钟.

每次过桥最多可以过两个人,而过桥的速度根据过桥最慢者而定,而且灯在点燃后40分钟就会熄灭,问小明一家如何过桥时间最短?

求C语言程序 最好用简单的方式编写并附上备注 新人真的做不出 求大虾们帮忙了

1个回答

分类:

综合

2014-10-09

问题解答:

我来补答

我是这样想的:选用时少的人和另一个人一起过桥(时耗算用时多的的人),选用时少的人返回传递火炬,如此下去,用时最少.

int i,n=0,a[1024];

for(i=0;;i++)

{

scanf("%d",&a[i]); //随机输入时耗

n++; //计算输入个数

if(getchar()=='\n')break; //遇回车中断

}

int MIN,TIME=0;

for(i=0;i

再问: 你好,这个程序显示没错误 但是运行不了

再答: 看了gdx2013的解答 ,我发现我前面总结的规律是错误的,我认真考虑后,总结了N个人过河的一般规律,感觉的应该是这样的:1、 先将N个人按过河的时耗长短重新排列(从短到长 可编号);2、按编号每2个人为一组过河(奇偶数分情况),先时耗最短的2个人(1号、2号)过河,在到达对岸时,让时耗最短的人(1号)回传火炬;3、时耗最长的2个人过河,在到达对岸时,让时耗最短的人(2号)回传火炬;4、重复2-3步骤即可;关键点:时耗最长的2个人过河,在到达对岸时,保持有耗最短的人(1号或者2号)回传火炬。全部代码如下:#includevoid main(){\x09    int i,j,temp,TIME=0,n=0,a[1024];     for(i=0;;i++)    {        scanf("%d",&a[i]);  //随机输入时耗        n++;        //计算输入个数        if(getchar()=='\n')break; //遇回车中断    }\x09    for(i=0;ia[j])\x09\x09\x09            { temp=a[i];a[i]=a[j]; a[j]=temp;}\x09\x09        }\x09    }\x09    if(n%2 == 0)   //偶数个人\x09    {\x09\x09        for(i=n-1;i>1;i=i-2)  TIME+=a[i]; \x09\x09        TIME =TIME+(n/2-1)*(a[0]+a[1])+(n/2)*a[1];     //自行总接的规律\x09    }\x09    else    //奇数个人\x09    {\x09\x09        for(i=n-1;i>2;i-=2)    TIME+=a[i]; \x09\x09        TIME =TIME+int(n/2)*(a[0]+a[1])+(int(n/2)-1)*a[1]+a[2];   \x09    }    if(TIME<40) printf("最短时长是%dmin",TIME);    else printf("最短时长是%dmin,无解",TIME);}

结果如下://奇数个人//偶数个人

展开全文阅读

c语言趣味程序设计过桥,C语言编程 小明一家过桥问题相关推荐

  1. 小明一家过桥,过桥时是黑夜_过桥:如何过渡到软件开发的职业

    小明一家过桥,过桥时是黑夜 by Marilyn Magnusen 玛丽莲·马格努森(Marilyn Magnusen) 过桥:如何过渡到软件开发的职业 (Crossing The Bridge: H ...

  2. 小明一家过桥_智力题(小明一家过桥)

    题目: 智力题(小明一家过桥) 现在小明一家过一座桥,过桥时候是黑夜,所以必须有灯.现在小明过桥要1秒,小明的弟弟要3秒,小明的爸爸要6秒,小明的妈妈要8秒,小明的爷爷要12秒.每次过桥只能过2人,两 ...

  3. 小明一家过桥_小学数学最难的“小明过桥”问题,答案不一致,大学生吵翻了...

    在小学数学当中,有一道非常难的"小明过桥"问题,引发了大家的热议.由于答案有很多种,就连大学生们,也陷入到了争论当中!为此吵翻了! 原题目是这样的: 小明一家要过桥,夜晚要用手电筒 ...

  4. 小明一家过桥_【练习】用python解决小明一家过桥问题

    import random list1=[] #存放所有遍历的结果 #等待过桥的人员 bridge1={'小明':1,'弟弟':3,'爸爸':6,'妈妈':8,'爷爷':12} #过桥后的人员 bri ...

  5. c语言趣味程序设计过桥,C语言趣味程序设计–题目百例.doc

    C语言趣味程序设计–题目百例 Contest - 2011级C语言课程大作业Start Time: 2012-02-19 16:25:00 End Time: 2012-03-01 22:00:00C ...

  6. c语言趣味教学题目及答案,C语言趣味程序设计-题目百例.doc

    C语言趣味程序设计-题目百例 Contest - 2011级C语言课程大作业Start Time: 2012-02-19 16:25:00 End Time: 2012-03-01 22:00:00C ...

  7. 趣味c语言题目,C语言趣味程序设计题目百例.doc

    C语言趣味程序设计题目百例 Contest - 2011级C语言课程大作业Start Time: 2012-02-19 16:25:00 End Time: 2012-03-01 22:00:00Cu ...

  8. c语言编程-小明的加减法(叛逆期的小明什么都喜欢反着做,连看数字也是如此(负号除外),比如:)

    c语言编程-小明的加减法 主要思想:整数的逆向输出 #include<stdio.h> int main() {int a,b,x,y,s,t,c=0,d=0;scanf("%d ...

  9. Interview Q A 小明一家5口如何过桥

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 小明一家 ...

最新文章

  1. python 词云_python数据可视化——词云
  2. 生信分析-本地BLAST
  3. 浙大博士导师整理:Tensorflow和Pytorch的笔记(包含经典项目实战)
  4. 《你不知道的JavaScript》整理(五)——值与原生函数
  5. 肇庆配送启动运营 谋定·农业大健康-李喜贵:共筑湾区“菜篮子”
  6. 物理安全是指保护计算机,计算机网络 物理安全
  7. 2020年,哪些行业涨工资最多?
  8. [转载] Python Pandas 转换unix时间戳
  9. python 学习笔记(1)-转载
  10. windows 10 彻底卸载windows 易升
  11. 惠普打印机驱动下载安装后不能使用,驱动人生解决方案
  12. 双绞线的线序568A与568B
  13. 西门子plc S7-1200学习历程(1)
  14. 交互设计基本功!5个值得学习的APP交互方式
  15. python中xlrd模块_Python中的xlrd模块使用原理解析
  16. wps打印缩放到一页_WPS文档过长时,如何在A4纸上完美打印
  17. 微博签到数据——北京、上海、昆明、深圳(2018-2022已更新完毕)
  18. 中小型服装店如何选择管理软件?
  19. js 中英文混合字符串 截取固定长度字节 方法封装
  20. adm浏览器识别为linux,QQ浏览器Linux版qqbrowserlinux_1.0.0-1_amd64.deb能正常使用

热门文章

  1. 一加5 android o,一加5T迎Oxygen OS 5.0公测版更新:基于全新Android O (8.0) 打造
  2. 3D射线拾取算法揭秘
  3. 摸索graphQL在前端vue中使用过程(三)
  4. 区块链共识机制常见的有哪几种
  5. 用C语言调用adduser命令
  6. 自定义TOTP方法,实现google的TOTP令牌token
  7. 我们父辈关于房子的事情(r11笔记第93天)
  8. Java seven
  9. Mybatis学习3之配置
  10. 如何用单片机实现基于电磁感应的无线充电系统