using System;
using System.Text;
public class Test
{
public static string SplitToLines(string str, int n)
{
var sb = new StringBuilder(str.Length + (str.Length + 9) / 10);
for (int q=0; q<str.Length; )
{
sb.Append(str[q]);
if (++q % n == 0)
sb.AppendLine();
}
if (str.Length % n == 0)
--sb.Length;
return sb.ToString();
}
public static void Main()
{
Console.WriteLine("{0}", SplitToLines("0123456789qwertyuiop[]asdfghjkl;'zxcvbnm", 10));
Console.WriteLine("==========");
Console.WriteLine("{0}", SplitToLines("0123456789qwertyuiop[]asdfghjkl;'zxcvbnmzxc", 10));
Console.WriteLine("==========");
Console.WriteLine("{0}", SplitToLines("0123456789", 10));
Console.WriteLine("==========");
Console.WriteLine("{0}", SplitToLines("01234567", 10));
Console.WriteLine("==========");
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dDsKCnB1YmxpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBzdGF0aWMgc3RyaW5nIFNwbGl0VG9MaW5lcyhzdHJpbmcgc3RyLCBpbnQgbikKCXsKCQl2YXIgc2IgPSBuZXcgU3RyaW5nQnVpbGRlcihzdHIuTGVuZ3RoICsgKHN0ci5MZW5ndGggKyA5KSAvIDEwKTsKCQkKCQlmb3IgKGludCBxPTA7IHE8c3RyLkxlbmd0aDsgKQoJCXsKCQkJc2IuQXBwZW5kKHN0cltxXSk7CgkJCQoJCQlpZiAoKytxICUgbiA9PSAwKQoJCQkJc2IuQXBwZW5kTGluZSgpOwoJCX0KCQkKCQlpZiAoc3RyLkxlbmd0aCAlIG4gPT0gMCkKCQkJLS1zYi5MZW5ndGg7CgkJCgkJcmV0dXJuIHNiLlRvU3RyaW5nKCk7Cgl9CgkKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKCQlDb25zb2xlLldyaXRlTGluZSgiezB9IiwgU3BsaXRUb0xpbmVzKCIwMTIzNDU2Nzg5cXdlcnR5dWlvcFtdYXNkZmdoamtsOyd6eGN2Ym5tIiwgMTApKTsKCQlDb25zb2xlLldyaXRlTGluZSgiPT09PT09PT09PSIpOwoJCUNvbnNvbGUuV3JpdGVMaW5lKCJ7MH0iLCBTcGxpdFRvTGluZXMoIjAxMjM0NTY3ODlxd2VydHl1aW9wW11hc2RmZ2hqa2w7J3p4Y3Zibm16eGMiLCAxMCkpOwoJCUNvbnNvbGUuV3JpdGVMaW5lKCI9PT09PT09PT09Iik7CgkJQ29uc29sZS5Xcml0ZUxpbmUoInswfSIsIFNwbGl0VG9MaW5lcygiMDEyMzQ1Njc4OSIsIDEwKSk7CgkJQ29uc29sZS5Xcml0ZUxpbmUoIj09PT09PT09PT0iKTsKCQlDb25zb2xlLldyaXRlTGluZSgiezB9IiwgU3BsaXRUb0xpbmVzKCIwMTIzNDU2NyIsIDEwKSk7CgkJQ29uc29sZS5Xcml0ZUxpbmUoIj09PT09PT09PT0iKTsKCX0KfQ==