188 条题解
-
0
xiao2008 LV 8 @ 2009-10-28 16:03:34
Orz……膜拜Einst、摁死他、爱因斯坦、lr、你是大傻你半秃你还喜欢XXX的旱地~神牛。
-
02009-10-28 15:33:56@
汇编解决之。。。。。。。
膜拜精通汇编、C++、C、Pascal的Einst神牛。。。。。
program vijos_1201;
var
n,ans:cardinal;begin
readln(n);
asm
mov n,%eax
rol $16,%eax
mov %eax,ans
end;
writeln(ans);
end. -
02009-10-21 13:09:42@
var a:longint;
begin
readln(a);
writeln(swap(a));
readln;
end. -
02009-10-15 18:12:12@
佩服 aiyx_fyh
-
02009-10-15 17:02:07@
CHH43看好了>>你是猪!!!!!!!!
-
02009-10-11 21:02:47@
Var
n,k:int64;
i,j:longint;
a,b:array[1..32] of integer;
Function mi(x:longint):int64;
var
w:int64;
begin
w:=1;
for i:=1 to x do w:=2*w;
mi:=w;
end;
Begin
readln(n);
i:=1;
while n>=1 do
begin
a[i]:=n mod 2;
n:=n div 2;
i:=i+1;
end;
for j:=1 to 16 do b[j]:=a[17-j];
for j:=17 to 32 do b[j]:=a[49-j];
for j:=32 downto 1 do
begin
if (b[j]=1) then
k:=k+b[j]*mi(32-j);
end;
writeln(k);
End. -
02009-10-08 01:43:33@
把int*指针转化为char*指针一次操作8位。。。
#include
void f(char *s)
{
char tmp = s[3];
s[3] = s[1];
s[1] = tmp;tmp = s[2];
s[2] = s[0];
s[0] = tmp;
}int main()
{
unsigned int n;
scanf("%u",&n);f((char *) &n);
printf("%u\n",n);
return 0;
} -
02009-10-06 21:48:35@
Var
K: LongWord;
Begin
Read(K);
Write(K mod 65536*65536+K Div 65536);
End.何必用什么位运算?
-
02009-10-03 15:06:37@
program gdwjh;
var
n:dword;
begin
readln(n);
writeln((n shr 16)or(n shl 16));
end.
学了位运算才懂。 -
02009-10-03 11:00:55@
……
笨人笨方法
位运算的不懂
根本不知道Swap函数的存在于是————
program ex;
var
a:array[1..32] of dword ;
n:dword ;procedure GetB ;
var
i,m:Dword ;
begin
fillchar(a,sizeof(a),0) ;
m := n ;
i := 1 ;
while m > 0 do
begin
a[i] := m mod 2 ;
m := m div 2 ;
inc(i) ;
end ;
end ;procedure Change ;
var
i,t:Dword ;
begin
for i := 1 to 16 do
begin
t := a[i] ;
a[i] := a ;
a := t ;
end ;
end ;procedure GetD ;
var
i:Dword ;
function E(x:Dword):longint ;
var
i,m:Dword ;
begin
m := 1 ;
for i := 2 to x do
m := m * 2 ;
exit(m) ;
end ;
begin
n := 0 ;
for i := 1 to 32 do
if a[i] = 1 then
inc(n,E(i)) ;
end ;BEGIN
read(n) ;
GetB ;
Change ;
GetD ;
writeln(n) ;
END.后来想了想 .. 又 ————
program ex;
var
n:Dword;BEGIN
read(n);
writeln((n shl 16) + (n shr 16)) ;
END.再再后来看到LX某人的题解 又————
Program ex;
var
n:Dword ;
BEGIN
read(n) ;
writeln(swap(n)) ;
END . -
02009-09-27 18:17:40@
没办法,人长得笨,就得笨笨的来!
#include
using namespace std;
unsigned long long f[35];
int main()
{
unsigned long long n,temp,qy = 1;
int i, j;
cin >> n;
for(i = 32;i >= 1; i--)
{
if(n > 0)
{
f[i] = n % 2;
n /= 2;
}
else
break;
}
for(i = 1,j =17 ; i = 1;i--)
{
temp += f[i] * qy;
qy *= 2;
}
cout -
02009-09-27 11:53:10@
var
s,b,n:int64;
begin
read(n);
s:=(n shr 16) or 0;
b:=n and ((1 shl 16)-1);
write((b shl 16) or s);
end. -
02009-09-27 10:41:37@
program p1201;
var
s,b,n:int64;
begin
read(n);
s:=(n shr 16) or 0;
b:=n and ((1 shl 16)-1);
write((b shl 16) or s);
end.弱弱的位运算!!!!!!!!SB
-
02009-09-24 07:53:26@
位运算是王道
-
02009-09-24 00:27:56@
由于不会用swap,也没有想位运算
就直接用了一个 binstr,偷了点小懒 -
02009-09-20 16:43:43@
#include
using namespace std;
__int64 a,b;
int main(){
cin>>a;
b=(a%65536)*65536+(a/65536);
cout -
02009-09-10 22:22:55@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0msms!
-
02009-09-09 00:04:37@
Var
n:longword;
Begin
Readln(n);
Writeln((n shl 16) or (n shr 16));
End. -
02009-09-08 19:55:44@
这是个神奇的程序,考察选手们对于dword和swap的用法。
虽然我一开始也不明白
但是我记住了以后就再也没有忘记
这个题太经典了
附代码:var n:dword;begin readln(n);writeln(swap(n));end.
XXX,1314521!
-
02009-09-04 00:13:20@
swap
晕,用longint不行....用dword;