news 2026/5/27 15:58:18

2025年湖南大学计算机考研复试机试真题(附 AC 代码 + 解题思路)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2025年湖南大学计算机考研复试机试真题(附 AC 代码 + 解题思路)

2025年湖南大学计算机考研复试机试真题

2025年湖南大学计算机考研复试上机真题

历年湖南大学计算机考研复试上机真题

历年湖南大学计算机考研复试机试真题

更多学校题目开源地址:https://gitcode.com/verticallimit1/noobdream

N 诺 DreamJudge 题库:输入 “学校名称” 即可筛选该校历年机试真题,题目均在考纲范围内,按难度自动排序。还可搭配《计算机考研机试攻略》刷题,书中题目可通过题号直接在题库中查找。

猴子报数

题目描述

Time Limit: 1000 ms
Memory Limit: 256 mb

n个猴子围坐一圈并按照顺时针方向从1到n编号,从第s个猴子开始进行1到m的报数,报数到第m的猴子退出报数,从紧挨它的下一个猴子重新开始1到m的报数,如此进行下去知道所有的猴子都退出为止。求给出这n个猴子的退出的顺序表。

输入输出格式
输入描述:

有做组测试数据.每一组数据有两行,第一行输入n(表示猴子的总数最多为100)第二行输入数据s(从第s个猴子开始报数)和数据m(第m个猴子退出报数).当输入0 0 0时表示程序结束.

输出描述:

每组数据的输出结果为一行,中间用逗号间隔。

输入输出样例
输入样例#:
10 2 5 5 2 3 0 0 0
输出样例#:
6,1,7,3,10,9,2,5,8,4 4,2,1,3,5

代码一

  1. class node:
  2. def __init__(self, value):
  3. self.value = value
  4. self.next = None
  5. while True:
  6. try:
  7. n = int(input())
  8. s,m = map(int, input().split())
  9. if n == 0 and s == 0 and m == 0:
  10. break
  11. head = node(1)
  12. curr = head
  13. for i in range(2, n + 1):
  14. curr.next = node(i)
  15. curr = curr.next
  16. curr.next = head
  17. while curr.value != s:
  18. curr = curr.next
  19. # print(curr.value)
  20. res = []
  21. for i in range(n):
  22. for j in range(m - 2):
  23. curr = curr.next
  24. res.append(str(curr.next.value))
  25. curr.next = curr.next.next
  26. curr = curr.next
  27. print(','.join(res))
  28. except:
  29. break

代码二

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5. int n;
  6. while(cin >> n)
  7. {
  8. int s, m;
  9. cin >> s >> m;
  10. //从第s个开始报数 1到m的报数
  11. if(n == 0 && s == 0 && m == 0) break;
  12. vector<int> num;
  13. for(int i = 1; i <= n; i++)
  14. {
  15. num.push_back(i);
  16. }
  17. vector<bool> vis(n, false);
  18. vector<int> res;
  19. int cur = s - 1;
  20. while(n--)
  21. {
  22. int cnt = 0;
  23. //cout << "n: " << n << endl;
  24. while(true)
  25. {
  26. //没出去可以进来数 数到要的数字就退出
  27. if(!vis[cur])
  28. {
  29. cnt++;
  30. if(cnt == m)
  31. {
  32. vis[cur] = true;
  33. res.push_back(num[cur]);
  34. break;
  35. }
  36. }
  37. cur = (cur + 1) % num.size();
  38. }
  39. }
  40. int i = 0;
  41. for( ; i < num.size() - 1; i++)
  42. {
  43. cout << res[i] << ",";
  44. }
  45. cout << res[i] << endl;
  46. }
  47. return 0;
  48. }

代码三

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main(){
  4. int n,s,m;
  5. while(cin>>n>>s>>m){
  6. if(!n && !s && !m) break;
  7. vector<int> a(n);
  8. for(int i=0;i<n;i++) a[i]=i+1;
  9. s-=1;m-=1;
  10. while(a.size()>1){
  11. s=(s+m)%a.size();
  12. cout<<a[s]<<",";
  13. a.erase(a.begin()+s);
  14. }
  15. cout<<a[0]<<endl;
  16. }
  17. return 0;
  18. }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/26 19:08:32

拯救者 Legion Go 硬盘更换全攻略:扩容不踩坑,新手也能看懂的拆机指南

对于拯救者 Legion Go 掌机玩家来说&#xff0c;随着大型游戏、高清影视的存储需求越来越大&#xff0c;原装硬盘的容量难免不够用。想要升级硬盘扩容&#xff0c;却又纠结 “自己拆机会不会弄坏机器”“操作步骤太复杂看不懂”“误操作影响保修怎么办”&#xff1f;其实 Legio…

作者头像 李华
网站建设 2026/5/26 19:07:46

Java计算机毕设之基于Java+SpringBoot+协同过滤算法的私人诊所管理系统设计与实现基于Java的诊所管理系统设计与实现(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/5/23 16:03:56

【Rust】变量系统详解

Rust 的变量系统是其内存安全和零成本抽象的核心组成部分。下面详细介绍 Rust 变量的关键特性&#xff1a; 1. 变量绑定 (Variable Binding) 在 Rust 中&#xff0c;变量声明被称为"绑定"&#xff08;binding&#xff09;&#xff0c;强调变量与值的关联关系&#…

作者头像 李华
网站建设 2026/5/23 16:52:02

错过等一年!Open-AutoGLM正式开源,AI开发者必备的5个使用技巧

第一章&#xff1a;Open-AutoGLM 开源 地址 Open-AutoGLM 是一个面向自动化自然语言处理任务的开源框架&#xff0c;旨在简化大语言模型在实际业务场景中的集成与调优流程。该项目由社区驱动开发&#xff0c;代码托管于主流开源平台&#xff0c;便于开发者协作贡献与持续集成。…

作者头像 李华
网站建设 2026/5/23 16:52:08

【AndrejKarpathy】2025年AI大模型深度复盘:年度最深刻的行业分析!

AndrejKarpathy前几天发了一篇2025年LLM年度回顾。他是OpenAI联合创始人、前特斯拉AI总监&#xff0c;也是全球最有影响力的AI研究者之一。这篇文章里有6个观点&#xff0c;每一个都理解得非常深刻。强烈推荐大家看看。 第一: 训练方法彻底变了 2025年之前&#xff0c;训练一个…

作者头像 李华