using System;
using System.Collections.Generic;
using System.Linq;
public class Program {
public static void Main() {
var lista = new List<string> { "AAA", "BBB", "CCC", "ABB", "ABC", "ACC", "ACD" };
Semelhante(lista, "A");
Semelhante(lista, "B");
Semelhante(lista, "C");
Semelhante(lista, "AB");
Semelhante(lista, "AC");
}
public static void Semelhante(List<string> lista, string padrao) {
foreach (var item in lista.OrderByDescending(x => (x.Contains(padrao)))) {
Console.WriteLine(item);
}
Console.WriteLine();
}
}
//https://pt.stackoverflow.com/q/259493/101
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CgpwdWJsaWMgY2xhc3MgUHJvZ3JhbSB7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpIHsKCQl2YXIgbGlzdGEgPSBuZXcgTGlzdDxzdHJpbmc+IHsgIkFBQSIsICJCQkIiLCAiQ0NDIiwgIkFCQiIsICJBQkMiLCAiQUNDIiwgIkFDRCIgfTsKCQlTZW1lbGhhbnRlKGxpc3RhLCAiQSIpOwoJCVNlbWVsaGFudGUobGlzdGEsICJCIik7CgkJU2VtZWxoYW50ZShsaXN0YSwgIkMiKTsKCQlTZW1lbGhhbnRlKGxpc3RhLCAiQUIiKTsKCQlTZW1lbGhhbnRlKGxpc3RhLCAiQUMiKTsKCX0KCXB1YmxpYyBzdGF0aWMgdm9pZCBTZW1lbGhhbnRlKExpc3Q8c3RyaW5nPiBsaXN0YSwgc3RyaW5nIHBhZHJhbykgewoJCWZvcmVhY2ggKHZhciBpdGVtIGluIGxpc3RhLk9yZGVyQnlEZXNjZW5kaW5nKHggPT4gKHguQ29udGFpbnMocGFkcmFvKSkpKSB7CgkJCUNvbnNvbGUuV3JpdGVMaW5lKGl0ZW0pOwoJCX0KCQlDb25zb2xlLldyaXRlTGluZSgpOwoJfQp9CgovL2h0dHBzOi8vcHQuc3RhY2tvdmVyZmxvdy5jb20vcS8yNTk0OTMvMTAx