//PacalABC.NET 3.4.2
//Используется формула аналогичная формуле Бине для чисел
//Фибоначчи
const
index = power(33, 0.5);
a1 = power((19 + 3 * index), 1 / 3);
a2 = power((19 - 3 * index), 1 / 3);
b = power((586 + 102 * index), 1 / 3);
var
n: smallint;
function tribonacthi(n: smallint): biginteger;
begin
if (n = 1) or (n = 2) then result := 0
else
result := RoundBigInteger(3 * b * ((power((1 / 3 * (a1 + a2 + 1)), n - 1)) / (power(b, 2) - 2 * b + 4)));
end;
begin
try
n := readinteger('Введите количество элементов для вывода:');
except
on system.formatexception do
writeln('Неверный формат ввода');
end;
for var i := 1 to n do write(tribonacthi(i), ' ');
end.
//PacalABC.NET 3.4.2
//Используется формула аналогичная формуле Бине для чисел
//Фибоначчи
const
index = power(33, 0.5);
a1 = power((19 + 3 * index), 1 / 3);
a2 = power((19 - 3 * index), 1 / 3);
b = power((586 + 102 * index), 1 / 3);
var
n: smallint;
function tribonacthi(n: smallint): biginteger;
begin
if (n = 1) or (n = 2) then result := 0
else
result := RoundBigInteger(3 * b * ((power((1 / 3 * (a1 + a2 + 1)), n - 1)) / (power(b, 2) - 2 * b + 4)));
end;
begin
try
n := readinteger('Введите количество элементов для вывода:');
except
on system.formatexception do
writeln('Неверный формат ввода');
end;
for var i := 1 to n do write(tribonacthi(i), ' ');
end.
#include <bits/stdc++.h>
using namespace std;
int ans,n,a[10101],m,b[10101];
main () {
cin >>n >>m;
for (int i = 1; i <= n; i++)
cin >>a[i];
sort(a + 1, a + n + 1);
for (int i = 1; i <= n; i++)
if (a[i] <= m) m-=a[i];
else
b[i] = pow(a[i] - m,2);
for (int i = 1; i <= n; i++)
if (b[i]) ans+=b[i];
cout <<ans;
}