题目描述
https://www.acwing.com/problem/content/742/
输入一个长度为 20
的整数数组 N
,将整个数组翻转,使得第一个元素成为倒数第一个元素,第二个元素成为倒数第二个元素,…,倒数第二个元素成为第二个元素,倒数第一个元素成为第一个元素。
样例
#include <bits/stdc++.h>
using namespace std;
long long a[21];
int main()
{
for(int i=0;i<20;i++)
{
cin>>a[i];
}
for(int i=19,j=0;i>=0;i--,j++)
{
cout<<"N["<<j<<"] = "<<a[i]<<endl;
}
return 0;
}
算法1
(暴力枚举) $O(n^2)$
输入一个长度为 20
的整数数组 N
,将整个数组翻转,使得第一个元素成为倒数第一个元素,第二个元素成为倒数第二个元素,…,倒数第二个元素成为第二个元素,倒数第一个元素成为第一个元素。
时间复杂度
参考文献
C++ 代码
#include <bits/stdc++.h>
using namespace std;
long long a[21];
int main()
{
for(int i=0;i<20;i++)
{
cin>>a[i];
}
for(int i=19,j=0;i>=0;i--,j++)
{
cout<<"N["<<j<<"] = "<<a[i]<<endl;
}
return 0;
}
算法2
(暴力枚举) $O(n^2)$
输入一个长度为 20
的整数数组 N
,将整个数组翻转,使得第一个元素成为倒数第一个元素,第二个元素成为倒数第二个元素,…,倒数第二个元素成为第二个元素,倒数第一个元素成为第一个元素。
时间复杂度
参考文献
C++ 代码
#include <bits/stdc++.h>
using namespace std;
long long a[21];
int main()
{
for(int i=0;i<20;i++)
{
cin>>a[i];
}
for(int i=19,j=0;i>=0;i--,j++)
{
cout<<"N["<<j<<"] = "<<a[i]<<endl;
}
return 0;
}