java数据结构,舞伴问题,运行不出来

java数据结构,舞伴问题,运行不出来哪里错误?能帮忙改一下吗

代码如下,可以直接运行。

public static void main(String[] args) {
final int M = 6; // number of girls,可改动
final int N = 7; // number of boys,可改动

int x = 3;// some boy,可改动
int y = 5;// some girl,可改动
String result = "";// 记录结果,即第二个问题

// 初始化,假设队列存放男女生编号,从1开始
Queue<Integer> boys = new LinkedList<Integer>();
for (int i = 1; i <= N; i++) {
boys.add(i);
}
Queue<Integer> girls = new LinkedList<Integer>();
for (int i = 1; i <= M; i++) {
girls.add(i);
}

// 跳舞开始
int min = boys.size() > girls.size() ? girls.size() : boys.size();
int k = 1;// songs
int count = 2; // 求出两个值,可改动
while (k < 1000) {//为了不死循环,这里假设最多有999支舞蹈
System.out.println("***This is the " + k + "st dance:");
for (int i = 0; i < min; i++) {
// 跳舞,第一个问题:输出每曲配对情况
System.out.println("Boy " + boys.peek() + " <=> Girl "
+ girls.peek());
// 跳过的排到对尾
int boy = boys.remove();
boys.add(boy);
int girl = girls.remove();
girls.add(girl);
// 判断 x和y跳舞了没有
if (boy == x && girl == y) {
result += k + ",";
count--;
}
}
if (count == 0)
break;
// next dance
k++;
}
// 结果
if (count == 0)
System.out.println("\n***Boy " + x + " and Girl " + y
+ " dance together in : " + result);//第二个问题的解答,跳了哪几支舞
else
System.out.println("\n***Boy " + x + " and Girl " + y
+ " have no chance to dance!");//第二个问题的解答,两人没机会跳舞
}
温馨提示:内容为网友见解,仅供参考
无其他回答

关于舞伴问题,数据结构高手请进!
在%c后面加一个\\n;如果还不行的话就在随便定义一个变量加在输入的最后,这个随便取的变量用来存储你最后确定时按得回车键,你用%c不行的原因就是因为最后确认时按得回车也写进去了~

Java数据结构舞伴问题
import java.util.ArrayList;import java.util.List;public class Person { private String name;private Integer sex;public String getName() { return name;} public void setName(String name) { this.name = name;} public Integer getSex() { return sex;} public void setSex(Integer sex)...

数据结构舞伴问题输入的形式和输入值的范围?
舞伴问题是指在一个舞会上男女比例相等,且每个参加舞会的人都有一个固定的舞伴。给定一个人员名单,要求将男女分别排成两列,并使得每个男士和一个女士舞伴在一起。如果无法找到合适的舞伴,则说明这个男士或女士不能参加舞会。数据结构舞伴问题的输入形式为一个数组,数组中的元素表示每个参加舞会的人的...

数据结构舞伴配对问题
你循环队列是怎么实现的,d:\\jiatingting\\app0304\\sqqueue.h(92) : error C2440: '=' : cannot convert from 'struct Person' to 'int',类型不符合,检查下头文件的类型

求数据结构C++舞伴配对问题程序代码
="女") \/\/判断输入性别是否符合要求{cout<<"输入的舞者性别不正确,请重新输入";continue;}else if(person.hour<0||person.hour>23||person.minute<0||person.minute>59||person.second<0||person.second>59){cout<<"输入的舞者到场时间不正确,请重新输入";continue;}else{if(person.sex==...

C++数据结构课程设计,寻找舞伴
看来楼上的不是很懂OJ啊. 一组一组输出是没有问题的...你的算法有问题啊... 需要的是方形的空地... 而不是方形的边框啊~就算是方形的边框... 你也只检验了两条边... = =|| 附一个正确的代码 (算法是DP)include <iostream> using namespace std;struct node { int rl;int dl;int...

相似回答