You are given a sequence of integer numbers. Zero-complexity transposition of the sequence is the reverse of this sequence. Your task is to write a program that prints zero-complexity transposition of the given sequence.
输入描述:
For each case, the first line of the input file contains one integer n-length of the sequence (0 < n ≤ 10 000). The second line contains n integers numbers-a1, a2, …, an (-1 000 000 000 000 000 ≤ ai ≤ 1 000 000 000 000 000).
输出描述:
For each case, on the first line of the output file print the sequence in the reverse order.
示例1
输入
5
-3 4 6 -8 9
输出
9 -8 6 4 -3
题解
(-1 000 000 000 000 000 ≤ ai ≤ 1 000 000 000 000 000).就要用longlong类型了,长整型的输入输出用cin最保险,因为在win和linux下长整型的scanf、printf表达不同
首先输入每个数字,入栈push,当栈非空,输出栈顶元素top
c++11
#include<stack>
#include<cstdio>
#include<iostream>
using namespace std;
stack<long long>s;
int main(){
int n;
cin>>n;
while(n--){
long long num;
cin>>num;
s.push(num);
}
while(!s.empty()){
cout<<s.top()<<" ";
s.pop();
}
cout<<endl;
}
总结
逆序问题用栈的后进先出原则很合适,注意把数字间的空格pop掉