fzu 1700 数学公式
//郁闷的题目 郁闷的oj 公式题 xp上敲的时候不行 换了g++ 加了个0.5 过了说
#include <iostream>
using namespace std;
int main()
{
int a, d;
long long i, s;
while (scanf("%d %d %lld", &a, &d, &i) != EOF)
{
i = i%2009;
if(i == 1)
{
s = 0;
}
else if(i==2)
{
s = d;
}
else if(i==3)
{
s = 5*d;
}
else if(i>=4)
{
s = (long long)(d*(((i-2)*(i-2)*(i-2)*(i-2)*(i-2)-(i-3)*(i-3)*(i-3)*(i-3)*(i-3))*1.0/120+((i-2)*(i-2)*(i-2)*(i-2)-(i-3)*(i-3)*(i-3)*(i-3))*1.0/8+((i-2)*(i-2)*(i-2)-(i-3)*(i-3)*(i-3))*17.0/24+(i-2)*(i-2)*15.0/8+(137.0/60)*(i-2)-(15.0/8)*((i-3)*(i-3))-(137.0/60)*(i-3))+0.5)%2009;
}
int result = ((a*i*(i+1)*(i+2)/6)%2009+s)%2009;
printf("%d\n", result);
}
return 0;
}
//原来是这公式 = =
#include <iostream>
using namespace std;
int main()
{
int a, d;
unsigned long long i, s;
while (scanf("%d %d %llu", &a, &d, &i) != EOF)
{
i = i % 2009;
s = (unsigned long long)(d*(i*(i-1)*(i+1)*(i+2))/24)%2009;
int result = ((a*i*(i+1)*(i+2)/6)%2009+s)%2009;
printf("%d\n", result);
}
return 0;
}