火车进出站
  kY8LGIkhLhtr 2023年11月02日 48 0

题目描述 重庆站位于重庆市渝中区菜袁路,又名菜园坝火车站,于 1952 年 7 月投入使用。2022 年 6 月 19 日,随着最后一班开往哈尔滨西的 K1064 次列车从重庆站发出后,重庆站完 成了 70 年铁路客运的使命,宣布正式停止运营。重庆站的结构如下图所示; 从图中可以发现重庆站的站台只能从同一端进出,现在有 n 列火车,编号为 1~n 按照 1~n 的顺序进同一个站台,假设站台长度一定能容纳 n 列火车,请你求出可能的出站顺 序. 输入描述 输入包含 1 行,为一个整数 n. 输出描述 对于每个测试用例,按照字典序升序输出前 20 个可能的出站顺序(若不满 20 个则输出 所有可能的出站顺序),每个序列占一行,序列中数字间用空格隔开 示例 输入 输出 3 1 2 3 1 3 2 2 1 3 2 3 1 3 2 1 数据范围 1 ≤ �

#include <iostream>

#include <stack>

using namespace std;

 

//bool flag[3] = {false};   //标记

//int number[3];

//int n = 3;

 

 

bool chick(int * array/*[3]*/,int sum)

{

stack <int> st;

int j = 0;

for (int i = 0; i < sum; i++)

{

 st.push(i + 1);

 while (st.size() && array[j] == st.top())

 {

  st.pop();

  j++;

 }

}

if (st.size())

{

 return false;

}return true;

}

 

 

void printA(int A, int sum,bool* flag, int* number)

{

if (A == sum)

{

 if (chick(number,sum))

 {

  for (int k = 0; k < sum; k++)

  {

   cout << number[k] << " ";

  }

  cout << endl;

 };

}

else

{

 for (int i = 0; i < sum; i++)

 {

  if (!flag[i])

  {

   number[A] = i + 1;

   flag[i] = true;

   printA(A+1,sum,flag,number);

   flag[i] = false;

  }

 }

}

}

 

 

int main()

{

int sum;

cin >> sum;

int* number = new int[sum];

bool* flag = new bool[sum] {false};

 

 

for (int i = 0; i < sizeof(flag); i++)

{

 flag[i] = false;

}

 

printA(0, sum,flag,number);

 

}

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  gBkHYLY8jvYd   2023年12月06日   50   0   0 #includecii++
  gBkHYLY8jvYd   2023年12月09日   30   0   0 cii++数据
  gBkHYLY8jvYd   2023年12月06日   24   0   0 cii++依赖关系
  lh6O4DgR0ZQ8   2023年11月24日   18   0   0 cii++c++
  gBkHYLY8jvYd   2023年12月10日   19   0   0 #include邻域灰度图像
  gBkHYLY8jvYd   2023年12月10日   24   0   0 #include数组i++
  gBkHYLY8jvYd   2023年12月06日   23   0   0 #includeios数据
  gBkHYLY8jvYd   2023年12月08日   21   0   0 #includecii++
kY8LGIkhLhtr