谁知道这哪里错了
原题链接:7823.药房管理2024-06-23 10:26:49
发布于:上海
#include<iostream>
using namespace std;
int main(){
int n;
int y;
int s[1000000];
int sum=0;
cin>>n;
cin>>y;
for(int i=0;i<y;i++){
cin>>s[i];
}
for(int i=0;i<n;i++){
if(n>s[i]){
n=n-s[i];
}
else{
sum++;
}
}
cout<<sum;
}
全部评论 1
if(n>s[i])不对,应该是if(n>=s[i]),因为如果n正好等于s[i],也应该做减法。
改:#include<iostream> using namespace std; int main(){ int n,y; int s[1000000]; int sum=0; cin>>n>>y; for (int i=0;i<y;i++) { cin>>s[i]; } for (int i=0;i<y;i++) { if (n>=s[i]){ n-=s[i]; }else{ sum++; } } cout<<sum; return 0; }
1周前 来自 湖南
0
有帮助,赞一个