⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1222.pas

📁 平时acm训练时ac的源代码
💻 PAS
字号:
program ex;
const maxdigits=1000;
var   a:array[1..maxdigits] of integer;
	  low,n,t:integer;
procedure multiply(x:integer);
var i:integer;
begin
	for i:=maxdigits downto low do
	    a[i]:=a[i]*x;
	for i:=maxdigits downto low do begin
		a[i-1]:=a[i-1]+a[i] div 10;
		a[i]:=a[i] mod 10;
	end;
	if a[low-1]<>0 then low:=low-1;
end;

procedure solve(j:integer);
var i:integer;
begin
	for i:=1 to j do multiply(3);
end;

begin
	fillchar(a,sizeof(a),0);
	a[maxdigits]:=1;
	low:=maxdigits;
	readln(n);
	if n=0 then begin
		writeln(0);
		halt;
	end;
	if n=1 then begin
	    writeln(1);
	    halt;
	end;
	if n mod 3=0 then begin
		solve(n div 3);
		t:=1;
	end;
	if n mod 3=1 then begin
		solve(n div 3-1);
		t:=4;
	end;
	if n mod 3=2 then begin
		solve(n div 3);
		t:=2;
	end;
    multiply(t);
    for t:=low to maxdigits do write(a[t]);
    writeln;
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -