當前位置:成語大全網 - 書法字典 - Pascal編程問題求解

Pascal編程問題求解

暈,這是我給巴蜀中學網上測評系統出的題。有多簡單?

讓我給妳我的出價,還有壹點解釋:

定義變量

t,b,n:int 64;

times,k,I,j:byte;

get:array[1..26]的字節;

dat:數組[0..27]的渴望;

開始

dat[1]:= 1;

b:= 1;

因為我:=2到26開始

b:= b * 2;

dat[I]:= b;

結束;

readln(次);

對於k:=1,開始計時

t:= 0;

readln(n);

如果(n & lt=0)或(n & gt67108863)然後開始

writeln(“無”);

退出;

結束;

重復

I:= 0;

復讀公司(壹);

直到(n & ltdat[i+1])或(i & gt=26);

Inc(t);

get[t]:= I;

dec(n,dat[I]);

直到n = 0;

for i:=t downto 1 do

write(chr(get[i]+64),' ');

writeln

結束;

結束。

想法:

這個問題是求2 k最接近n的值,然後從n中減去,記下k;重復該操作,直到n變為0。然後根據記錄的k值找出盤符。

樓主說妳的程序總是超時。我想妳壹定用過搜索?這個問題有壹些規律,不需要搜索。