Перевести код из Java в Pascal: import java.util.*; public class Main { static long[]...

0 голосов
112 просмотров

Перевести код из Java в Pascal:



import java.util.*;

public class Main
{
static long[] countPerfect(int n)
{
int i, j;
long cat[]= new long[51];
cat[0] = cat[1] = 1;
for(i = 2; i <= n; i++)<br> for(j = 0; j < i; j++)
cat[i] += cat[j] * cat[i - j - 1];
return cat;
}

public static void main(String[] args)
{
long cat[] = countPerfect(50);
Scanner con = new Scanner(System.in);
while(con.hasNext())
{
int n = con.nextInt();
System.out.println(cat[n/2]);
}
}
}


Информатика (377 баллов) | 112 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1407 от 18.03.2017
// Внимание! Если программа не работает, обновите версию!

function countPerfect(n:integer):array of BigInteger;
begin
  var cat:=new BigInteger[51];
  (cat[0],cat[1]):=(1,1);
  for var i:=2 to n do
    for var j:=0 to i-1 do
      cat[i]+=cat[j]*cat[i-j-1];
  Result:=cat
end;

begin
  var cat:=countPerfect(50);
  ReadlnString.ToIntegers.Select(n->cat[n div 2]).Println;
end.

Пример
1 43 19 42 7
1 24466267020 4862 24466267020 5

(150k баллов)
0

Я уже сам догадался, спасибо, мне просто переменную надо было с файлами связывать )

0

assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
readln(input, n);
writeln(output, cat[n div 2]);
close(input);
close(output);

0

Как умею))

0

Учту, спасибо)