首页 > 代码库 > 舞伴问题(1027)
舞伴问题(1027)
<style>p { margin-bottom: 0.25cm; line-height: 120% }</style>
描述
假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。若两队初始人数不相同,则较长的那一队中未配对者等待下一轮舞曲。要求编写程序实现舞伴问题。
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)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。