1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | using System; using System.Collections.Generic; using System.Linq; public class Test { static IEnumerable<string> MultiConcat(params IEnumerable<string>[] lists) { if (lists == null) { return null; } if (lists.Length == 0) { return Enumerable.Empty<string>(); } return lists.Aggregate(new[] { string.Empty } as IEnumerable<string>, (acc, list) => acc.SelectMany(s1 => list.Select(s2 => s1 + s2))); } public static void Main() { var list1 = new List<string> { "A", "B" }; var list2 = new List<string> { "1", "2", "3" }; var list3 = new List<string> { "FOO", "BAR" }; foreach (var s in MultiConcat(list1, list2, list3)) { Console.Out.WriteLine(s); } } } |
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CglzdGF0aWMgSUVudW1lcmFibGU8c3RyaW5nPiBNdWx0aUNvbmNhdChwYXJhbXMgSUVudW1lcmFibGU8c3RyaW5nPltdIGxpc3RzKQoJewoJICAgIGlmIChsaXN0cyA9PSBudWxsKSB7CgkgICAgICAgIHJldHVybiBudWxsOwoJICAgIH0KCQoJICAgIGlmIChsaXN0cy5MZW5ndGggPT0gMCkgewoJICAgICAgICByZXR1cm4gRW51bWVyYWJsZS5FbXB0eTxzdHJpbmc+KCk7CgkgICAgfQoJCgkgICAgcmV0dXJuIGxpc3RzLkFnZ3JlZ2F0ZShuZXdbXSB7IHN0cmluZy5FbXB0eSB9IGFzIElFbnVtZXJhYmxlPHN0cmluZz4sCgkgICAgICAgICAgICAgICAgICAgKGFjYywgbGlzdCkgPT4gYWNjLlNlbGVjdE1hbnkoczEgPT4gbGlzdC5TZWxlY3QoczIgPT4gczEgKyBzMikpKTsKCX0KCglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJdmFyIGxpc3QxID0gbmV3IExpc3Q8c3RyaW5nPiB7ICJBIiwgIkIiIH07CgkJdmFyIGxpc3QyID0gbmV3IExpc3Q8c3RyaW5nPiB7ICIxIiwgIjIiLCAiMyIgfTsKCQl2YXIgbGlzdDMgPSBuZXcgTGlzdDxzdHJpbmc+IHsgIkZPTyIsICJCQVIiIH07CgkJCgkJZm9yZWFjaCAodmFyIHMgaW4gTXVsdGlDb25jYXQobGlzdDEsIGxpc3QyLCBsaXN0MykpIHsKCQkgICAgQ29uc29sZS5PdXQuV3JpdGVMaW5lKHMpOwoJCX0JCQoJfQp9
-
upload with new input
-
result: Success time: 0.02s memory: 37032 kB returned value: 0
A1FOO A1BAR A2FOO A2BAR A3FOO A3BAR B1FOO B1BAR B2FOO B2BAR B3FOO B3BAR


