题意翻译
一个士兵想在商店里买W个香蕉。他必须为第一个香蕉支付K美元,第n个香蕉需要K*n美元
他有N元。他从他的朋友士兵那里借了多少美元去买W香蕉?
输入:k n w
输入输出样例
输入样例#1
3 17 4
输出样例#1
13
思路
香蕉个数:w*(w+1)/2 个。等差数列求和公式。
价格:k*香蕉个数。
另外,如果不需要借钱,就输出0。
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);//加快cin速度的第二个黑科技
int n,i,j,k,w,s(0);
cin>>k>>n>>w;
s=k*(w*(w+1)/2);
cout<<max(s-n,0);
return 0;
}

博客围绕士兵买香蕉的问题展开。士兵想买W个香蕉,第一个香蕉K美元,第n个K*n美元,他有N元。通过等差数列求和公式算出香蕉个数为w*(w+1)/2 个,进而得出价格。若钱不够需借钱,不够则输出0。

被折叠的 条评论
为什么被折叠?



