POJ 1950 不打表做法)

2021-06-09 13:16:37 字數 943 閱讀 6612

這題就是搜……

注意設定maxn 要不然肯定爆 maxn=1*10^最大位數/2 1234..89-11121314這樣的

program aa;

const

maxn=1000000000000000;

var n,t:longint;

a:array[1..15] of char;

procedure dfs(l,sum,res,bl:int64);

var i,j:longint;

begin

if l=n then

begin

res:=res+bl*sum;

if res=0 then

begin

inc(t);

if t<=20 then

begin

for i:=1 to n-1 do write(i,' ',a[i],' ');

writeln(n);

end;

end;

exit;

end;

a[l]:='+';

dfs(l+1,l+1,res+bl*sum,1);

a[l]:='-';

dfs(l+1,l+1,res+bl*sum,-1);

a[l]:='.';

if sum<=maxn then

if l+1<=9 then

dfs(l+1,sum*10+(l+1),res,bl)

else

dfs(l+1,sum*100+(l+1),res,bl);

end;

begin

read(n);

t:=0;

dfs(1,1,0,1);

writeln(t);

// close(output);

end.

1950 Problem D 進製轉換

時間限制 1 sec 記憶體限制 32 mb 將m進製的數x轉換為n進製的數輸出。輸入的第一行包括兩個整數 m和n 2 m,n 36 下面的一行輸入乙個數x,x是m進製的數,現在要求你將m進製的數x轉換成n進製的數輸出。輸出x的n進製表示的數。10 2 111011注意輸入時如有字母,則字母為大寫,...

50道演算法題(19 50)

給定乙個包含 m x n 個元素的矩陣 m 行,n 列 請按照順時針螺旋順序,返回矩陣中的所有元素。示例 1 輸入 1,2,3 4,5,6 7,8,9 輸出 1,2,3,6,9,8,7,4,5 示例 2 輸入 1,2,3,4 5,6,7,8 9,10,11,12 輸出 1,2,3,4,8,12,11...

1950QuickPow(快速冪加法)

quickpow time limit 1000 ms memory limit 32768 k total submit 122 77 users total accepted 84 76 users rating special judge no description 計算a b k。由於結果...