[C]uong
Admin
Tổng số bài gửi : 258
Điểm : 466
Ngày tham gia : 08/07/2009
Age : 31
Đến từ : Äô Thà nh CiTy
Character sheet Point: (50/50)
|
Tiêu đề: Quà tết 28/07/09, 06:15 pm |
|
|
Program quatet; uses crt; var p,q,Max:longint; k:byte; Function AmuB(a:longint;b:byte):longint; begin if b=0 then AmuB:=1 else if b=1 then AmuB:=a else AmuB:=a*AmuB(a,b-1); end; Function getL(c:longint):longint; var t,l:byte; Function getlog2:byte; var b:longint; begin b:=c; While b mod 2 = 0 do begin b:=b div 2; inc(t); end; c:=c-AmuB(2,t); getlog2:=t; end; begin t:=0; if c=0 then getL:=0 else begin l:=getlog2; GetL:=AmuB(4,K-l-1)+GetL(c); end; end; Begin clrscr; textcolor(11); write('k=');read(k); Max:=AmuB(2,k)-1; Repeat write('(p,q)=');readln(p,q); until (p<=Max)and(q<=Max); Writeln('Vi tri" may ma"n la`: ',1+2*GetL(p)+GetL(Max-q)); readln; End.
|
|