当前位置:网站首页>ZCMU--1862: zbj的狼人杀
ZCMU--1862: zbj的狼人杀
2022-07-31 07:11:00 【小小小Why】
Description
这天zbj和小伙伴总共n个人出去玩狼人杀,玩的正开心的时候又来了一群人总共n个,硬是要跟他们一起玩,所以他们想了一个游戏规则准备赶走他们。规则是这样的,所有人坐在圆桌旁,从第一个人开始报数,数到第m个人,则这个人出局;然后从出局的人之后开始数数,再将数到的第m个人出局.....依次方法不断出局,直到最后只剩n个人,这时候,zbj希望剩下的n个人是他和他的小伙伴们,试问预先应该怎么安排座位,能使得他完成心愿?
Input
多组数据,每组数据输入:人数n(<=100000)、步长m(<=32767);
Output
对于每一组数据,输出2n个大写字母,‘A’表示zbj和他的小伙伴,‘B’表示外来的那群人,50个字母为一行,不允许出现空白字符。相邻数据间留有一空行。
Sample Input
2 3
2 4
Sample Output
ABBA
BAAB
解析:B其实就是淘汰的人,用vector来十分方便,我们开一个数组a[ ]来记录每个人是A还是B,最开始全部设为A,然后利用vector来模拟淘汰,每次淘汰前将其对应编号的a[ ]标记为B,最后按格式输出即可。
#include <stdio.h>
#include <vector>
using namespace std;
vector<int> v;
char a[200005];//来存放每个人对应是A还是B
int main()
{
int n,m,i,p;
while(~scanf("%d%d",&n,&m)){
p=0;
v.erase(v.begin(),v.end()); //初始化清空
for(i=1;i<=2*n;i++) v.push_back(i),a[i]='A';//先全部设为A,后面出局了更新为B
while(1){
p=(m+p-1)%v.size(); //第p个人淘汰了,要从下一个开始数,所以要带着p算出下一个淘汰的人
if(p<0) p=v.size()-1;//特判一下,小于0时,就是最后一个人
a[*(v.begin()+p)]='B'; //对应位置为B
v.erase(v.begin()+p); //此人出局
if(v.size()==n) break; //出局n个人,游戏结束
}
p=0;
for(i=1;i<=2*n;i++){
printf("%c",a[i]);
p++;
if(p==50) printf("\n"),p=0; //满50换一行
}
printf("\n\n"); //要多一个空行
}
return 0;
}
边栏推荐
猜你喜欢
Embedded system driver primary [2] - _ parameters and dependencies under the kernel module
解决安装 Bun 之后出现 zsh compinit: insecure directories, run compaudit for list. Ignore insecure directorie
机器学习---线性回归、Logistic回归问题相关笔记及实现
Vscode: Project-tree plugin
实用生物信息学2:多组学数据整合和挖掘
Client navicat installation tutorial
[Interview: Concurrency 37: Multithreading: Thread Pool] Custom Thread Pool
03-SDRAM: Write operation (burst)
regex bypass
DAY18: Xss Range Clearance Manual
随机推荐
Spark 在 Yarn 上运行 Spark 应用程序
金融租赁业务
基金投顾业务
Reimbursement Process | By Tianfang
SCI写作指南
2022.07.13_Daily Question
电脑开机密码怎么设置?如何给你的电脑加上“安全锁”
《c语言》青蛙跳台阶递归问题
深度学习通信领域相关经典论文、数据集整理分享
The Ballad of Lushan Sends Lu's Servant to the Void Boat
客户端navicat安装教程
2022.07.15_每日一题
CY7C68013A之LED闪烁
2022.07.13 _ a day
波士顿房价数据集 Boston house prices dataset
Vscode:Project-tree插件
Vscode: Project-tree plugin
Jetpack Compose学习(8)——State及remeber
DAY18: Xss Range Clearance Manual
2022.07.24_Daily Question