A. Soldier and Bananas(CF546) Codeforces Round #304 (Div. 二)

A. Soldier and Bananas(CF546) Codeforces Round #304 (Div. 2)
A. Soldier and Bananas
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

A soldier wants to buy w bananas in the shop. He has to pay k dollars for the first banana, 2k dollars for the second one and so on (in other words, he has to pay i·k dollars for the i-th banana).

He has n dollars. How many dollars does he have to borrow from his friend soldier to buy w bananas?

Input

The first line contains three positive integers k, n, w (1  ≤  k, w  ≤  10000 ≤ n ≤ 109), the cost of the first banana, initial number of dollars the soldier has and number of bananas he wants.

Output

Output one integer — the amount of dollars that the soldier must borrow from his friend. If he doesn't have to borrow money, output 0.

Sample test(s)
input
3 17 4
output
13


#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;

#define LL __int64
LL n,k,w;

int main()
{
    int i;
    LL sum = 0;
    scanf("%I64d%I64d%I64d",&k,&n,&w);
    for(i = 1;i<=w;i++)
        sum +=i*k;
        if(n>=sum)
            printf("0\n");
        else
    printf("%I64d\n",sum-n);

    return 0;
}