题面
题目描述
有一组数(设有N个)。编一程序交换这组数中任意指定的两段。
输入
一个数N(不超过20个)
一行N个数由空格分开
两个空格分开的数(表示要交换的其中一段)
两个空格分开的数(表示要交换的其中另一段)
输出
交换后的一行数(中间用空格隔开)
样例输入
16
3 6 11 45 23 70 67 34 26 89 90 15 56 50 20 10
3 5
13 15
样例输出
3 6 56 50 20 70 67 34 26 89 90 15 11 45 23 10
题解
暴力交换即可。
代码:
#include<iostream>
using namespace std;
int a[21],x,y,c,d,n;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
cin>>x>>y;
cin>>c>>d;
//部分1:输入
//部分2:暴力交换及输出
for(int i=1;i<x;i++){
cout<<a[i]<<" ";
}
for(int i=c;i<=d;i++){
cout<<a[i]<<" ";
}
for(int i=y+1;i<c;i++){
cout<<a[i]<<" ";
}
for(int i=x;i<=y;i++){
cout<<a[i]<<" ";
}
return 0;
}
/**************************************************************
Problem: 1146
User: 2018f20
Language: C++
Result: 正确
Time:0 ms
Memory:2024 kb
****************************************************************/
这是一个关于JZXXOJ 1146题目的入门级题解,主要涉及数字交换的操作。题目要求编写程序交换一组数中任意指定的两段。解题方法是暴力交换,输入包括一个整数N和四组数字,输出为交换后的数字序列。
1293

被折叠的 条评论
为什么被折叠?



