舞伴问题(1027)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了舞伴问题(1027)相关的知识,希望对你有一定的参考价值。
描述
假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。若两队初始人数不相同,则较长的那一队中未配对者等待下一轮舞曲。要求编写程序实现舞伴问题。
input
输入一共5行,
第一行是男生人数m;
第二行依次是男生的姓名;
第三行是女士的人数n;
第四行依次是女士的姓名;
第五行是跳舞的轮数。
output
配对的男士和女士的姓名。
样例输入
5
A B C D E
3
F G H
2
样例输出
B G
很多人开始不理解这道题是什么意思,其实这道题表达的意思非常简单,就拿样例来说,跳舞配对的方式应该是AF,BG,CH然后女士轮完了开始下一轮DF,EG。。以此类推。
具体代码如下
#include<iostream>
using
std::cin;
using
std::cout;
using
std::endl;
struct
people{
int
head;
int
lenth;
char
memb[100];
}boy,girl;
int
main(){
boy.head=1;
girl.head=1;
int
i;
cin>>boy.lenth;
for
(i=1;i<=boy.lenth;i++){
cin>>boy.memb[i];
}
cin>>girl.lenth;
for
(i=1;i<=girl.lenth;i++){
cin>>girl.memb[i];
}
int
time
;
cin>>
time
;
for
(i=0;i<
time
-1;i++){
boy.head++;
girl.head++;
if
(boy.head>boy.lenth){
boy.head=1;
}
if
(girl.head>girl.lenth){
girl.head=1;
}
}
cout<<boy.memb[boy.head]<<
" "
<<girl.memb[girl.head];
return
0;
}
以上是关于舞伴问题(1027)的主要内容,如果未能解决你的问题,请参考以下文章