using System;
using System.Linq;
using System.Collections.Generic;
using System.Globalization;
using System.Net;
public class Test
{
public static void Main()
{
var strings = new[] {
"FD1","FD5","FD10","FD102","FD105","FD10","FD32","FD80", "FD31", "FD21", "FDnon"
};
strings = strings.Select(str => new
{
str,
num = str.Substring(2).All(Char.IsDigit) ? int.Parse(str.Substring(2)) : 0
})
.OrderBy(x => x.num)
.Select(x => x.str)
.ToArray();
foreach(var s in strings)
Console.WriteLine(s);
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWM7CnVzaW5nIFN5c3RlbS5HbG9iYWxpemF0aW9uOwp1c2luZyBTeXN0ZW0uTmV0OwoKCnB1YmxpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKICAgICAgICAgICAgdmFyIHN0cmluZ3MgPSBuZXdbXSB7IAoiRkQxIiwiRkQ1IiwiRkQxMCIsIkZEMTAyIiwiRkQxMDUiLCJGRDEwIiwiRkQzMiIsIkZEODAiLCAiRkQzMSIsICJGRDIxIiwgIkZEbm9uIgp9OwogICAgICAgICAgICBzdHJpbmdzID0gc3RyaW5ncy5TZWxlY3Qoc3RyID0+IG5ldwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBzdHIsCiAgICAgICAgICAgICAgICBudW0gPSBzdHIuU3Vic3RyaW5nKDIpLkFsbChDaGFyLklzRGlnaXQpID8gaW50LlBhcnNlKHN0ci5TdWJzdHJpbmcoMikpIDogMAogICAgICAgICAgICB9KQogICAgICAgICAgICAuT3JkZXJCeSh4ID0+IHgubnVtKQogICAgICAgICAgICAuU2VsZWN0KHggPT4geC5zdHIpCiAgICAgICAgICAgIC5Ub0FycmF5KCk7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgZm9yZWFjaCh2YXIgcyBpbiBzdHJpbmdzKQogICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZShzKTsKCX0gICAKfQoKICAgIAo=