谁家孩子跑得最慢
来源:互联网 发布:ios微信3d touch源码 编辑:程序博客网 时间:2024/04/28 16:44
问题描述:
张王李三家各有三个小孩。一天,三家的九个孩子在一起比赛短跑,规定不分年龄大小,跑第一得9分,跑第2得8分,依此类推。比赛结果各家的总分相同,且这些孩子不存在并列,也没有一家的孩子获得相连的名次。已知获第一名的是李家的孩子,获得第二的是王家的孩子。问获得最后一名的是谁家的孩子?
思考一:
三家孩子总分数相同都是:(1+2+.....+9)/3=15
思考二:
第一名的是李家的孩子,获得第二的是王家的孩子:第三一定是张家,否则其他两家分数超过15
思考三:
也没有一家的孩子获得相连的名次:所以第四的不是张家的
算法设计:
二维数组:张家score[1][1],score[1][2],score[1][3],王家score[2][1],score[2][2],score[2][3],李家score[3][1],score[3][2],score[3][3]
约束条件:
1)score[1][1]=7,score[2][1]=8,score[3][1]=9
2)score[1][2]!=6
3)score[1][2]!=score[2][2]!=score[3][2],score[1][3]!=score[2][3]!=score[3][3]
*程序说明与注释#include<stdio.h>int score[4][4];int main(){int i,j,k,who;//i,j,k代表三家的跑二个的孩子score[1][1]=7;
score[2][1]=8;
score[3][1]=9;
for(i=4;i<6;i++) /*i:张家孩子不是第四*/for(j=4;j<7;j++)
for(k=4;i!=j&&k<7;k++)
if(k!=i&&k!=j&&15-i-score[1][1]!=15-j-score[2][1]&&15-i-score[1][1]!=15-k-score[3][1]&&15-j-score[2][1]!=15-k-score[3][1])//第二三名不并列{score[1][2]=i;score[1][3]=15-i-7; /*将满足条件的结果记入数组*/score[2][2]=j;score[2][3]=15-j-8;score[3][2]=k;score[3][3]=15-k-9;}for(who=0,i=1;i<=3;i++,printf(" "))for(j=1;j<=3;j++){printf("%d",score[i][j]); /*输出各家孩子的得分情况*/if(score[i][j]==1)who=i; /*记录最后一名的家庭序号*/}if(who==1) /*输出最后判断的结果*/printf("The last one arrived to end is a child from family Zhang. ");else if(who==2)printf("The last one arrived to end is a child from family Wang. ");else printf("The last one arrived to end is a child from family Li. ");}
0 0
- 谁家孩子跑得最慢
- 谁家孩子跑的最慢-C语言
- 逻辑推理与判断(谁家孩子跑得快)
- 谁家孩子跑最快.....
- 谁家孩子
- 1044: 谁家孩子跑最慢*
- 1044:谁家孩子跑最慢
- 芝诺悖论:一个跑得最快的人永远追不上跑得最慢的人
- 【C语言训练】谁家孩子跑最慢
- 1173: 【C语言训练】谁家孩子跑最慢*
- 1173: 【C语言训练】谁家孩子跑最慢*
- (百例编程)57.谁家的孩子跑最慢
- 走得太慢。
- 谁家的blog最稳定,速度最快呢?
- 把数学踢出高考,那么谁家的孩子该学数学?
- 我跑得快摔的疼 跑得慢 吃不到
- 别对孩子爱得太卑微
- 走得最慢的人,只要他不丧失目标,也比漫无目的地徘徊的人走得快
- c# xml
- 异步编程
- fmt 包中的函数和方法
- Java基础学习总结——线程
- swift ?? 合并
- 谁家孩子跑得最慢
- 决策树分类和预测算法的原理及实现
- qml 中支持的数据类型
- Spring+SpringMVC环境搭建(一)
- linux mac ssh相关操作
- android之listview滑动与下拉刷新冲突 : listview未到顶部便出现下拉刷新
- codevs1993草地排水——第一次写网络流
- 使用autopilot部署OpenStack将不在Ubuntu 16.04中支持
- 【算法分析】排序算法