using System.Collections;
using System.Collections.Generic;
public static void Main()
var values = new List<string>
private static void CreateTree(IEnumerable<string> values)
var tree = new List<(string, int, int?)>();
var groups = values.Select(s => s.Split('_').Reverse().Skip(1).Reverse());
foreach (var grp in groups)
foreach (string key in grp)
Console.WriteLine(key + " : " + id);