using System;
public class Test
{
public static void Main()
{
for (int n = 0; n <= 100; n += 5)
{
Console.WriteLine("n=" + n + " -> exp1: " + sigma(n) + " exp2: " + combination(n+1, 3));
}
}
public static double sigma(int n)
{
double sum = 0.0;
for (int i = 2; i <= n; i++)
{
sum += combination(i, 2);
}
return sum;
}
public static double combination(int n, int k)
{
return factorial(n) / (factorial(k) * factorial(n-k));
}
public static double factorial(int x)
{
if (x <= 1) { return 1; }
return (double)x * factorial(x-1);
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCWZvciAoaW50IG4gPSAwOyBuIDw9IDEwMDsgbiArPSA1KQoJCXsKCQkJQ29uc29sZS5Xcml0ZUxpbmUoIm49IiArIG4gKyAiIC0+IGV4cDE6ICIgKyBzaWdtYShuKSArICIgZXhwMjogIiArIGNvbWJpbmF0aW9uKG4rMSwgMykpOwoJCX0KCX0KCQoJcHVibGljIHN0YXRpYyBkb3VibGUgc2lnbWEoaW50IG4pCgl7CgkJZG91YmxlIHN1bSA9IDAuMDsKCQlmb3IgKGludCBpID0gMjsgaSA8PSBuOyBpKyspCgkJewoJCQlzdW0gKz0gY29tYmluYXRpb24oaSwgMik7CgkJfQoJCXJldHVybiBzdW07Cgl9CgkKCXB1YmxpYyBzdGF0aWMgZG91YmxlIGNvbWJpbmF0aW9uKGludCBuLCBpbnQgaykKCXsKCQlyZXR1cm4gZmFjdG9yaWFsKG4pIC8gKGZhY3RvcmlhbChrKSAqIGZhY3RvcmlhbChuLWspKTsKCX0KCQoJcHVibGljIHN0YXRpYyBkb3VibGUgZmFjdG9yaWFsKGludCB4KQoJewoJCWlmICh4IDw9IDEpIHsgcmV0dXJuIDE7IH0KCQlyZXR1cm4gKGRvdWJsZSl4ICogZmFjdG9yaWFsKHgtMSk7Cgl9Cn0=