买香蕉问题
题目大意:
士兵想买W个香蕉。买第一个香蕉K美元,第二个2K美元,以此类推,第i 个香蕉iK美元。
现在该士兵有n美元,而他想买W个香蕉,他需要向他的朋友借多少美元?
要求:
输入:第一行输入整数K,n,W(其中1 ≤ K, W ≤ 1000, 0 ≤ n ≤ 109),分别表示第一个香蕉的钱,士兵最初有的钱和他想买香蕉的数量。
输出:输出士兵向他的朋友借的钱数。如果他没有借钱,输出0。
样例输入:
Input
3 17 4
Output
13
题目分析:
计算士兵买香蕉花费的总钱数(m+=i*K),然后将总钱数与士兵现有的钱数比较,看是否要借钱。
程序代码:
1 #include<cstdio> 2 #include<iostream> 3 using namespace std; 4 5 int w[1000]; 6 7 int main() 8 { 9 int k,n,w,m=0; 10 scanf("%d%d%d",&k,&n,&w); 11 for(int i=0;i<=w;i++) 12 {m+=i*k;} //士兵买香蕉花费的总钱数 13 if(m<=n) //士兵需要向他的朋友借的钱数 14 cout<<"0"<<endl; 15 else 16 cout<<m-n<<endl; 17 return 0; 18 }
心得:
题目比较简单,但理解需要注意,是没有借钱输出0,而不是当他的钱数与所花费的总钱数相等时输出0,在做题的时候我这里理解错了,导致测试结果虽然对但提交后一直显示答案错误。下次做题一定要注意读清题目。
时间: 2024-11-05 22:38:11