Сколько в ряду натуральных чисел есть отрезков (то есть, подряд идущих чисел) таких, что...

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

Сколько в ряду натуральных чисел есть отрезков (то есть, подряд идущих чисел) таких, что сумма всех чисел этого отрезка равна 1014? В качестве ответа выведите одно натуральное число, например, 2.
Например, 1, 2, 3, 4, 5 – отрезок с началом 1 и концом 5 и суммой всех чисел 15, а 34 – отрезок с началом 34 и концом 34 и суммой всех чисел 34.


Информатика (182 баллов) | 21 просмотров
Дан 1 ответ
0 голосов

Пусть чисел в отрезке N штук.
тогда сумма подряд идущих чисел, начиная с х будет равна
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

(32.2k баллов)