博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 4841 圆桌问题(用vector模拟约瑟夫环)
阅读量:5864 次
发布时间:2019-06-19

本文共 1581 字,大约阅读时间需要 5 分钟。

题目链接:

圆桌问题

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)
Total Submission(s): 104    Accepted Submission(s): 17
Problem Description
圆桌上围坐着2n个人。当中n个人是好人。另外n个人是坏人。假设从第一个人開始数数,数到第m个人。则马上处死该人。然后从被处死的人之后開始数数,再将数到的第m个人处死……依此方法不断处死围坐在圆桌上的人。

试问预先应怎样安排这些好人与坏人的座位,能使得在处死n个人之后。圆桌上围坐的剩余的n个人全是好人。

 
Input
多组数据,每组数据输入:好人和坏人的人数n(<=32767)、步长m(<=32767)。
 
Output
对于每一组数据,输出2n个大写字母,‘G’表示好人,‘B’表示坏人,50个字母为一行。不同意出现空白字符。

相邻数据间留有一空行。

 
Sample Input
 
2 3 2 4
 
Sample Output
 
GBBG BGGB
 
Source
 
Recommend
We have carefully selected several similar problems for you:            

代码例如以下:

//用vector模拟约瑟夫环#include 
#include
#include
#include
#include
using namespace std;int flag[50017];vector
v;int main(){ int n, m; int tot, now; int i; while(~scanf("%d%d",&n,&m)) { v.clear(); tot=2*n; for(i = 1; i <= tot; i++) { v.push_back(i); flag[i]=0; } now=1; /*for(i = 0; i < v.size(); i++) { printf("%d:%d\n",i,v[i]); }*/ while( tot > n )//仅仅寻找坏人 { now+=(m-1); if(now <= tot) { flag[v[now-1]]=1;//从0開始计算 //printf(">%d<\n",v[now-1]); //printf("1: %d\n",*(v.begin()+now-1)); v.erase(v.begin()+now-1);//删除已经被flag[]标记的 now = (now==tot?1:now); } else { now%=tot; now = (now==0?tot:now); flag[v[now-1]]=1; //printf(">>%d<<\n",v[now-1]); //printf("2: %d\n",*(v.begin()+now-1)); v.erase(v.begin()+now-1);//删除已经被flag[]标记的 now = (now==tot?1:now); } tot--;//总数减一 } for(i = 1; i <= 2*n; i++) { if(flag[i]) printf("B"); else printf("G"); if(i%50==0) printf("\n"); } if((2*n)%50!=0) printf("\n"); printf("\n"); } return 0;}

转载地址:http://jzynx.baihongyu.com/

你可能感兴趣的文章
.net MVC4 来一个简单的分页代码
查看>>
PhantomJS 和Selenium模拟页面js点击
查看>>
ViewController
查看>>
(十八)属性表
查看>>
20135220谈愈敏Blog2_操作系统是如何工作的
查看>>
EOJ 3263 丽娃河的狼人传说
查看>>
《转》进入MFC讲坛的前言
查看>>
用Mindjet MindManager 15 打开文件后停止响应的解决方法
查看>>
Redis安装
查看>>
事件冒泡和事件捕获
查看>>
一、策略模式
查看>>
学习Spring必学的Java基础知识(1)----反射
查看>>
Java JPA 查询实体部分字段
查看>>
十个优秀的C语言学习资源推荐
查看>>
PyQt5教程——第一个程序(2)
查看>>
WTL初始化的一些宏
查看>>
X.509 Digital Certification
查看>>
IOS 特定于设备的开发:使用加速能力“向上定位”
查看>>
sql优化
查看>>
网站后缀名都有哪些
查看>>