using System.Collections.Generic;
public static void Main()
var l = new List<int?>{0, 0, 0, 0, 0, 0, 4, 5, 6, 3, 0, 0, 2, 3};
var firstIndex = l.FindIndex(x => x != 0);
var m = l.Select((item, index) => firstIndex == -1 || index < firstIndex ? null : item);
Console.WriteLine(string.Join(',', m));
l = new List<int?>{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
firstIndex = l.FindIndex(x => x != 0);
m = l.Select((item, index) => firstIndex == -1 || index < firstIndex ? null : item);
Console.WriteLine(string.Join(',', m));