Задача не предполагает создание нового массива, в ней сказано "вывести все элементы массива с чётными номерами".
int a = Int32.Parse(Console.ReadLine()); string text = Console.ReadLine(); string[] array = text.Split(' '); for (int i = 0; i < a; i+=2) Console.Write(array[i] + " "); Console.WriteLine(); Console.ReadLine();или можно используя System.Linq ("int a" даже лишняя):
int a = Int32.Parse(Console.ReadLine()); string text = Console.ReadLine(); string[] array = text.Split(' '); Console.WriteLine(string.Join(' ', array.Where((x,i) => i%2==0))); Console.ReadLine();Пример работы:
from collections import deque
n, k = map(int, input().split())
x, d, ssum = list(map(int, input().split())), deque(), 0
b = [(0,0) for i in range(n)]
for i in range(n):
ssum += x[i]
if i >= k :
ssum -= x[i - k]
if d[0] == i - k :
d.popleft()
while len(d) and x[d[-1]] >= x[i]:
d.pop()
d.append(i)
if i >= k - 1:
nb = (b[i-k][0] + x[d[0]] * ssum, i-k+2)
b[i] = max(b[i-1], nb, key=lambda x: x[0])
i = n - 1
d = deque()
j = b[-1][1]
d.appendleft(j)
while i !=0:
i -= 1
j1 = b[i][1]
if j-k>=j1 and j1 > 0 :
d.appendleft(j1)
j = j1
print(str(len(d)))
print(" ".join(map(str, d)))