Зависит от того, что называть качеством, но скорее уменьшение.
Уменьшение приводит к потере информации: каждый пиксель нового изображения соответствует нескольким пикселям исходного, поэтому не может передать мелкие детали, от чего появляется размытие. В самом экстремальном случае - когда всё сжимается в один пиксель - все детали исходного изображения будут потеряны.
Увеличение приводит к тому, что в новом изображении необходимо задать цвет пикселей, которых не было на исходном рисунке. Если пользоваться наивными алгоритмами - например, просто добавлять пиксели усреднённого цвета - будет возникать размытие чётких границ, при этом градиенты будут переданы неплохо. Современные графические редакторы используют более сложные приёмы, вплоть до использования нейронных сетей для "придумывания" недостающих пикселей, поэтому качество страдает не так сильно.
тогда сумма подряд идущих чисел, начиная с х будет равна
Sum = Nx + N*(N-1)/2
здесь второе слагаемое - это частичная сумма арифметической прогрессии 0,1,2,3...N
Максимальное значение N будет при нулевом x
1/2 (N - 1) N = 1014
N^2/2 - N/2 - 1014 = 0
N = 1/2 - sqrt(8113)/2 - нехороший корень
N = 1/2 + sqrt(8113)/2 - а это правильный, равный 45,53
Максимальное значение x будет при N=1
x = 1014, это тривиальное решение
Перебирать будем по N, просто меньше перебора
Nx + N*(N-1)/2 = 1014
Nx = 1014 - N*(N-1)/2
x = 1014/N - (N-1)/2 = (2028 - N(N-1))/(2N)
и проверять x на целостность
var
x,n,counter:longint;
begin
counter:=0;
for n:=1 to 45 do
if (2028 - N*(N-1))mod(2*N) = 0 then
begin
inc(counter);
x := (2028 - N*(N-1))div(2*N);
writeln ('x=',x,' N=',n);
end;
writeln('Всего решений ',counter);
end.
а отрезков 6