小声BB
不写了不写了,补完了
题干
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 ≤ 1000, 0 ≤ 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.
Examples
Input
3 17 4
Output
13
分析
等差数列求和,做之前要考虑一下范围,稍微算一下发现int够了,那没事了
代码
#include<iostream>
using namespace std;
int main()
{
int k,n,w,sum;
cin >> k >> n >> w;//k一个香蕉费用,n钱,w个数
sum = (1 + w) * w / 2 * k - n;
if(sum < 0)
cout << '0';
else
cout << sum;
return 0;
}