舞会(单向队列)
/*
舞会
【问题描述】
学校举办了一场舞会,男生和女生在入场时,各自排成一队。伴奏响起时,依次从男队和女队的队首各出一人配成舞伴。规定每个舞曲只有一对跳舞者,若两队初始人数不同,则较长的那一队中未配对者等待下一轮舞曲。请利用程序模拟这个过程。
输入:一行,三个数字m,n和p,分别表示男队人数、女队人数和舞曲数目。
输出: p行,每行两个数字,表示第i首舞曲的男女配对编号。(男生编号在前,女生编号在后,用一个空格隔开)
【样例输入】
4 3 6
【样例输出】
1 1
2 2
3 3
4 1
1 2
2 3
*/
#include<iostream>
using namespace std;
int main(){
int font1=0,rear1=0,font2=0,rear2=0;
nt man[10000],woman[10000];
int m,n,p;
cin>>m>>n>>p;
for(int i=1;i<=m;i++){
man[rear1]=i;
rear1++;
}
for(int i=1;i<=n;i++){
woman[rear2]=i;
rear2++;
}
while(font1 != rear1 && font2 != rear2 && p > 0){
cout<<man[font1]<<" "<<woman[font2]<<endl;
man[rear1]=man[font1];
woman[rear2]=man[font2];
rear1++;
font1++;
rear2++;
font2++;
p--;
}
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现