vijos 1201高低位交换

本题谁都会做,在这里分析一下各个方法。

1.按照说明模拟,不再累述。

2.pascal同学有内置函数swap,但要注意数据类型了,longint不够2^32,int64不符合函数要求,只能用cardinal。

3.最有水平的解法,位运算(n shr 16) or (n shl 16) 就是结果了。

View Code
 1 program p1201(input,output);
2 var
3 x:dword;
4 begin
5 assign(input,'p1201.in');reset(input);
6 assign(output,'p1201.out');rewrite(output);
7 readln(x);
8 writeln((x<<16)or(x>>16));
9 close(input);
10 close(output);
11 end.



posted @ 2012-03-11 16:09  Codinginging  阅读(222)  评论(0编辑  收藏  举报