首页 > ACM题库 > 九度OJ > 九度-1039-Zero-complexity Transposition[解题代码]
2013
12-12

九度-1039-Zero-complexity Transposition[解题代码]

题目来源:2007年上海交通大学计算机研究生机试真题

题目描述:

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.

样例输入:
5
-3 4 6 -8 9
样例输出:
9 -8 6 4 -3

cpp 代码如下:
#include <stdio.h>
typedef long long ll;
ll arr[10001];
int n,i;
int main() {
	while (scanf("%d", &n) != EOF) {
		for ( i = n - 1; i >= 0; i--)
			scanf("%lld", &arr[i]);
		printf("%lld", arr[0]);
		for (i = 1; i < n; i++)
			printf(" %lld", arr[i]);
		printf("\n");
	}
	return 0;
}
/**************************************************************
	Problem: 1039
	User: coder
	Language: C
	Result: Accepted
	Time:0 ms
	Memory:992 kb
****************************************************************/


  1. 第二个方法挺不错。NewHead代表新的头节点,通过递归找到最后一个节点之后,就把这个节点赋给NewHead,然后一直返回返回,中途这个值是没有变化的,一边返回一边把相应的指针方向颠倒,最后结束时返回新的头节点到主函数。

  2. 学算法中的数据结构学到一定程度会乐此不疲的,比如其中的2-3树,类似的红黑树,我甚至可以自己写个逻辑文件系统结构来。

  3. 约瑟夫也用说这么长……很成熟的一个问题了,分治的方法解起来o(n)就可以了,有兴趣可以看看具体数学的第一章,关于约瑟夫问题推导出了一系列的结论,很漂亮