using System.Collections.Generic;
public static void Main()
Console.WriteLine("Example1:");
var result1 = FindPatterns("a12v89fsdseef8a7sd7v7aussdshdf7v7b89s8d9q6q8a74sds", 3);
foreach(var r in result1){
Console.WriteLine(r.Item1 + " " + r.Item2);
Console.WriteLine("Example2:");
var result2 = FindPatterns("aaaaaaaaaaaaaaaa", 4);
foreach(var r in result2){
Console.WriteLine(r.Item1 + " " + r.Item2);
public static List<Tuple<string, int>> FindPatterns(string input, int length)
List<string> sl = new List<String>();
for (int i=0 ; i <= input.Length-length; i++)
sl.Add(input.Substring(i, length));
var result = from s in sl
select new Tuple<string, int>(g.Key,g.Count());