当前位置: 首页 > article >正文

【题解-洛谷】B4295 [蓝桥杯青少年组国赛 2022] 报数游戏

题目:B4295 [蓝桥杯青少年组国赛 2022] 报数游戏

题目描述

某班级男生人数为 X X X 人,女生人数为 Y Y Y 人,现全班同学围成一个圆圈,并按照顺时针方向为每名同学编号(从 1 1 1 X + Y X+Y X+Y)。现给出一个正整数 K K K 2 < K < ( X + Y ) 2<K<(X+Y) 2<K<(X+Y)),从编号为 1 1 1 的同学开始顺时针方向报数,报到 K K K 的同学退出圆圈,下一名同学继续从 1 1 1 报数,再次报到 K K K 的同学退出圆圈。如此循环,直到剩余人数为 X X X 时游戏结束。

请你计算出游戏开始时 X X X 名男生分别应该排在什么位置,才能保证每次离开的都是女生,游戏结束时剩余 X X X 人都是男生。并将游戏开始时每名男生的位置编号按照从小到大顺序输出。

例如: X = 5 X=5 X=5 Y = 3 Y=3 Y=3 K = 3 K=3 K=3 8 8 8 名同学按照如下图的顺序排列(蓝色为男生位置,红色为女生位置),可以使 3 3 3 轮报数过后最后剩余的 5 5 5 名同学都为男生。故 5 5 5 名男同学的编号分别为 2 2 2 4 4 4 5 5 5 7 7 7 8 8 8

输入格式

输入三个正整数 X X X Y Y Y K K K 3 ≤ X ≤ 100 3 \leq X \leq 100 3X100 3 ≤ Y ≤ 100 3 \leq Y \leq 100 3Y100 2 < K < ( X + Y ) 2 < K < (X+Y) 2<K<(X+Y)), X X X 表示男生人数, Y Y Y 表示女生人数, K K K 表示报数的关键数字,三个正整数之间以一个空格隔开。

输出格式

输出 X X X 个整数,表示每名男生位置编号按照从小到大的顺序排列,编号之间以一个空格隔开。

输入输出样例 #1

输入 #1

5 3 3

输出 #1

2 4 5 7 8

代码(10分)

#include<iostream>using namespace std;const int MaxXY = 200 + 10;int X, Y, K;
int out[MaxXY];int main(){cin >> X >> Y >> K;int nv = Y;int i = 1;while(nv --){int t = 1;while(t < K){// cout << "i: " << i << " out[i]: " << out[i] << endl;if(!out[i]){i = (i + 1) % (X + Y + 1);if(i == 0){i ++;}t ++;}else{while(out[i]){i = (i + 1) % (X + Y + 1);if(i == 0){i ++;}}t ++;}}if(out[i]){while(out[i]){i = (i + 1) % (X + Y + 1);if(i == 0){i ++;}}}// cout << "i: " << i << endl;out[i] = 1;i = (i + 1) % (X + Y + 1);if(i == 0){i ++;}}for(int i = 1; i <= (X + Y); i ++){if(!out[i]){cout << i << " ";}}return 0;
}
http://www.lryc.cn/news/2393356.html

相关文章:

  • Bootstrap项目 - 个人作品与成就展示网站
  • 新能源汽车霍尔线束介绍
  • 2023网络应用专业-Python程序设计复习题目
  • Termux可用中间人网络测试工具Xerosploit
  • 气镇阀是什么?
  • SmolVLM2: The Smollest Video Model Ever(七)
  • RFID综合项目实训 | 基于C#的一卡通管理系统
  • mysql如何设置update时间字段自动更新?
  • 数据库备份与恢复专业指南
  • 【第4章 图像与视频】4.5 操作图像的像素
  • Science Advances 上海理工大学与美国杜克大学(Duke University)共同开发了一种仿生复眼相机
  • 正点原子Z20 ZYNQ ​​​开发板​​发布!板载FMC LPC、LVDS LCD和WIFI蓝牙等接口,资料丰富!
  • 软件测评中心如何确保软件品质?需求分析与测试计划很关键
  • 004 flutter基础 初始文件讲解(3)
  • 2025LitCTF 复现
  • 英语中最难学的部分是时态‌
  • Python 如何让自动驾驶的“眼睛”和“大脑”真正融合?——传感器数据融合的关键技术解析
  • 使用C# 快速删除Excel表格中的重复行数据-详解
  • WPF-Prism学习笔记之 “导航功能和依赖注入“
  • 中国城市间地理距离矩阵(2024)
  • 【孙悟空喝水】2022-2-7
  • `sysctl`命令深度剖析:如何优化内核参数以提升服务器网络/IO性能?
  • AxumStatusCode细化Rust Web标准格式响应
  • 【备战秋招】C++音视频开发经典面试题整理
  • 【音频处理】java流式调用ffmpeg命令
  • 《java创世手记》---java基础篇(下)
  • 【MySQL】C语言连接
  • How API Gateways handle raw TCP packets
  • 芯片配置文件自动化生成
  • 新能源汽车与油车销量