C++题目 帮忙一下 谢谢!

出栈顺序

【问题描述】

给定一个由n个元素构成的序列,你需要将其中的元素按顺序压入一个大小为c的栈并弹出。元素按它们的出栈顺序进行排列,会得到一个新的序列。我们知道,这样的序列会有很多种,请输出所有新序列中第一个元素最小的序列(若第一个元素最小的序列有多个,则令第二个尽可能小;若仍有多个,则令第三个最小,以此类推)。

【输入格式】

第一行,两个数n,c;

第二行n个数,为序列中n个元素的值。

【输出格式】

输出n个数,为满足要求的序列。

【样例输入】

6 3

5 2 3 8 7 4

【样例输出】

2 3 5 4 7 8

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n,c;
int a[100];
cout<<"输入n,c"<<endl;
cin>>n>>c; //输入n,c
for(int i=0;i<n;i++)
{
cout<<"请输入第"<<i+1<<"个数";
cin>>a[i]; //输入n个数的值
}
int sortNumber=n/c;

for(int i=0;i<n/c;i++)
{
sort(a+i*c,a+(i+1)*c);
}
for(int i=0;i<n;i++)
{
cout<<a[i]; //输出n个数的值
}
return 0;
}
温馨提示:内容为网友见解,仅供参考
无其他回答

这是一个C++二级考试的题,请高手指教一下
答案是B 首先你要明白逗号表达式的含义才能掌握。逗号表达式:比如(表达式1,表达式2),它最终返回的是第二个表达上也就是表达式2的值。因此,在A中,首先先执行括号里面的语句y=z=8,得到y==8,z==8,接着执行4*6,得到24,并且该表达式返回第二个表达上的值,也就是24,因此x==24。同理可...

c++ 有一道题目麻烦各位帮我看看我做的哪里错了,谢谢!
一开始就错了。既然是用switch语句,那么p是整型,而不能定为实型。从各个奖金的区间来看,你分的各种case基本都错了,从case 2开始,后面都错了。而且题目没有如果输入p的值是负数的错误提示。整个程序基本上错得差不多了。

c++ 题目不会!大佬求解答!
多余的数:该数组中其他的数通过加法计算出来,换个解释其实就是,这个数对数组中的某个数求余,余数仍在该数组中。如数组{3,4,5} 其中任何一个数都不能由其他数相加得出 如数组{7,10,12,22,25} 其中22对12求余后,结果是10,而10存在数组中,则22是多余的数 建议先对数组进行排序,由小...

几道c++题目,我觉得答案给的有些问题,希望高手不吝赐教,非常感谢_百度...
1.别自己把自己搞糊涂了。只记住一条:基类构造函数肯定要再派生类前面调用就行了。这个关系是基本准则,其他一切都是根据这个来的。2.如果A派生出B,B派生出C,那么A中的纯虚函数能不能在B中不实现,而只在C中实现?这看你要怎么用了。如果你不准备实例化B,当然是可以的。如果你要实例化B,必...

c++题目,给个代码,谢谢
C++具体代码如下:include<iostream> include<algorithm> using namespace std;int main() { int n;cin >> n;int a[n];for (int i = 0; i < n; ++i)cin >> a[i];sort(a, a + n, greater<int>()); \/\/ 降序排列 int ans = -1; \/\/ 满足条件的和,不存在则输出-1 for (...

c++二维数组的一道题,实在是不会做了,有小伙伴帮帮我么?
这个题目其实并不难的。第一步先读入二维的字符数组。然后用一个相应的二维整数数组,并初始化全部为零。在读字符的时候就可以对这个数组进行统计,读到某个元素值是红色时就把相应的行记一下数,同时相应的列记一下数,等到二维字符数组读完以后就对这个统计的数字数组进行统计,看行上为奇数的有几个...

请问大家这道C++编程题怎么做?求帮忙
先将输入的数保存到数组,然后遍历数字,判断相邻数字是否相同即可 使用一个变量记录当前是否处于数字连续的状态,用于输出中括号 一个小技巧是给数组多分配一个位置并将其置为-1,方便判断数组最后一个数 C++代码和运行结果如下:输出符合样例,望采纳~附源码链接:判断连续数字 ...

c++ OOP题目。求大神。求详解。
答案是:B a(4) - 1 次。这个定义了一个变量a,用4初始化a (可以知道AB类中至少定义了一个成员,该成员可被构造函数初始化)b[3] - 3次。 这个定义了一个数组b,有三个元素,那么b[3]就是初始化了3个AB对象,因此被调用3次。p[2] - 0 次。 这个定义一个指针数组(2个元素的数组...

计算机程序设计语言C++题目,求思路和结果
第一个知识点是逗号运算符。(c=a++, b+++a)的结果是先计算c=a++,然后使用b+++a的值作为最终结果。三个+放在一起,那一定是一个+号,和一个自增运算符++放在一起了,至于具体怎么解释需要知道运算符优先级。大多数运算符是从左到右,所以应该解释为(b++) + a。所以,c=a++使得c=0,a...

求大神解答c++题目
接着使用树形dp预处理出断开直径上的每条边后,剩下子树的直径 最后遍历直径上的边,计算断开后两子树直径差的绝对值最小值即可 C++代码如下:include <bits\/stdc++.h> \/\/ C++万能头文件 using namespace std;using pii = pair<int, int>; \/\/ 每条边的右端点v和权重 const int N = 1e6 +...

相似回答