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

[ 本帖最后由 wankoilz 于 2008-6-18 20:17 编辑 ]

TOP

如果前15名和后15名一一对应2人一组的话,也应该有15个优等生。
如果30个人组成一个30边形,每个点拥有的连线一样。如果是每个点都有29条连线,那仍然只有15个优等生...其他5或6人一组的情况也可以抽象成多边形的连线。
若总人数n,貌似最多的优等生数量为 n/2 或 (n-1)/2

写了个,不知道对不对:
  1. @echo off
  2. set/p num=请输入班上的人数:
  3. cls&echo 总人数%num%,每个人有相同的朋友数,优等生情况如下:&echo.
  4. for /l %%i in (2,1,%num%) do (
  5. call :out %%i
  6. )
  7. pause>nul
  8. :out
  9. set/a t=1/(num%%%1) 2>nul && goto :eof || set/a m=%1,n=num/m,q=%1-1
  10. set/a t=1/(m%%2) 2>nul && set/a o=(m-1)/2 || set/a o=m/2
  11. set/a p=o*n
  12. echo 如果每个人有%q%个朋友,那么有%p%个优等生。
复制代码

[ 本帖最后由 wankoilz 于 2008-6-19 20:56 编辑 ]

TOP

返回列表