A soldier wants to buy *w* bananas in the shop. He has to pay *k* dollars for the first banana, 2*k* 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?
The first line contains three positive integers *k*, *n*, *w* (1  ≤  *k*, *w*  ≤  1000, 0 ≤ *n* ≤ 10<sup class="upper-index">9</sup>), the cost of the first banana, initial number of dollars the soldier has and number of bananas he wants.
import sys

def inp():
    return int(input())


def inlt():
    return list(map(int, input().split()))


def insr():
    return input().strip()


def out(x):
    sys.stdout.write(str(x) + "\n")


# def main():
#     strings = []
#     for _ in range(2):
#         strings.append(insr())
    
#     strings = [i.lower() for i in strings]
    
#     if strings[0] == strings[1]:
#         out(0)

# def remove_duplicates(string):
#     ans = ""
#     for s in string:
#         if s in ans:
#             continue
#         else:
#             ans += s
#     return ans


# def get_multiples(num):
#     multiples = []
#     for i in range(1, num+1):
#         mul = num // i if num % i == 0 else 0
#         if mul:
#             multiples.append(mul)
    
#     multiples.sort()
#     return multiples

def main():
    input_statement = inlt()
    initial_cost = input_statement[0]
    wallet = input_statement[1]
    required_bananas = input_statement[2]
    total_cost = 0
    for i in range(1, required_bananas+1):
        curr_cost = initial_cost * i
        total_cost += curr_cost
        
    out(total_cost - wallet)
        
if __name__ == "__main__":
    main()
