谁家的孩子跑的最慢

编程入门 行业动态 更新时间:2024-10-26 08:32:14

谁家的孩子跑的<a href=https://www.elefans.com/category/jswz/34/1723945.html style=最慢"/>

谁家的孩子跑的最慢

张王李三家各有三个小孩。一天,三家的九个孩子在一起比赛短跑,规定不分年龄大
小,跑第一得 9 分,跑第 2 得 8 分,依此类推。比赛结果各家的总分相同,且这些孩子
没有同时到达终点的,也没有一家的两个或三个孩子获得相连的名次。已知获第一名的

是李家的孩子,获得第二的是王家的孩子。问获得最后一名的是谁家的孩子?

 

思路:

一共有三家,一家有三个孩子,一共有9个结果,可定义一个3*3的二维数组,不能同时到达

终点即分数都不想同,同一家孩子没有相连的名字,即分数不能相连,又因为最后分数相等即45/3==15

李家孩子的了一个9分则第二个李家孩子得分不能超过5,王家的第二个孩子不能超过6,推测出张家第一个儿子

分数为7,张家第二个儿子不能超过6

程序:

#include <stdio.h>
main()              
{int a[3][3],i,j,k;//各自家孩子第一个孩子的分数a[0][0]=7;  //张家第一个孩子,可以推算出来a[1][0]=8;  //王家第一个孩子a[2][0]=9;  //李家第一个孩子for (i=4;i<6;i++)for (j=4;j<7;j++)for (k=4;k<7;k++){if ((i!=j&&i!=k&&j!=k)&&          //各自家第二个孩子分数不能相等(15-i-a[0][0]!=15-j-a[1][0] &&  //各自家第三个孩子分数不能相等15-i-a[0][0]!=15-k-a[2][0] &&15-j-a[1][0]!=15-k-a[2][0])){a[0][1]=i;a[0][2]=15-7-i;  //给各自家第二个孩子赋值;给第三个孩子赋值a[1][1]=j;a[1][2]=15-8-j;  // 第三个孩子分数==总分数-第一个孩子分数-第二个孩子分数a[2][1]=k;a[2][2]=15-9-k;}}for (i=0;i<3;i++){for (j=0;j<3;j++){if (a[i][j]==1)   //1为分数最小的{if (i==0)printf("张家");else if (i==1)printf("王家");elseprintf("李家");}}printf("\n");}
}


更多推荐

谁家的孩子跑的最慢

本文发布于:2023-06-25 23:17:57,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/885814.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:最慢   孩子

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!