回 帖 发 新 帖 刷新版面

主题:数据结构——敢死队问题

有M个敢死队员要炸掉敌人的一碉堡,谁都不想去,排长决定用轮回数数的办法来决定哪个战士去执行任务。如果前一个战士没完成任务,则要再派一个战士上去。现给每个战士编一个号,大家围坐成一圈,随便从某一个战士开始计数,当数到5时,对应的战士就去执行任务,且此战士不再参加下一轮计数。如果此战士没完成任务,再从下一个战士开始数数,被数到第5时,此战士接着去执行任务。以此类推,直到任务完成为止。
   排长是不愿意去的,假设排长为1号,请你设计一程序,求出从第几号战士开始计数才能让排长最后一个留下来而不去执行任务。




[i][b]哪位大哥帮忙做一下这个题目[/b][/i]

回复列表 (共1个回复)

沙发

其实是很简单的,你根据人数构建一个循环链表,也就是普通链表的表尾指向表头,然后就是每隔5个删除一个链表元素,直到链表中剩下一个元素为止!代码你就自己写吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册