[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

逻辑题:批处理求好学生的最大数量

题目是这样的:
一个班级中有30个学生,每个学生都有相同数量的朋友(自己不是自己的朋友,朋友是互相的),如果某个学生比他这组朋友中的一半人学习好,那么他就是一个好学生,求好学生的最大数量。。。

请用批处理求好学生的最大数量。。。
我初步计算的结果是14,想让达人们也做下这题,看答案是不是一样~谢谢。。。

理解下题意。。。先假设这个班有4个学生。。。abcd,假设他们各自都有3个朋友,随机乱序给他们分配朋友
学生            朋友
a                              bcd
b                              acd
c                              abd
d                              abc

1.假设a比bc学习好,那么a为好学生,数量加1
2.因为第一步得出的结果,所以b不可能比a学习好。所以b只要比cd好,那么b为好学生,数量再加1
3.因为a>b>c,所以c只能比d学习好,那么c就不是好学生。。。
4.a>b>c>d 所以d不是好学生。。。。

这样一来,4个学生,每个学生三个朋友,那么好学生的数量就是2
请发现其中的规律。。。 这只是在假设朋友数量最大的情况下得出的结果。。。
我第一次得出的结果是错误的,忘记了是在求好学生的最大数量,应该把朋友的数量尽可能的减小。。。
是我把这题简单化了,实际情况过于复杂。正在思考版主的代码~

TOP

不管怎么想,都是30组朋友才对 这个“组”是固定的~变化的是“组”里面的人数~

TOP

貌似朋友是互相的,这句话 只告诉我们 若a是b的朋友,那b也是a的朋友。。。我觉得仅有这一层含意而已~ 不包括“他若不是你朋友也就不是我朋友”

我有点晕了。。。  这题有漏洞也说不定。。。

TOP

返回列表