
#include<bits/stdc++.h>
using namespace std;
int a[186];
int main(){
int n,m;
int x=0,zs;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
if(x+a[i]<=m){
x+=a[i];
}
else{
zs=i-1;
}
}
cout<<zs;
}
样例都对,结果7个测试点就对了两个
#include<bits/stdc++.h>
using namespace std;
int a[186];
int main(){
int n,m;
int x=0,zs;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
a[i]+=a[i-1];
}
// for(int i=1;i<=n;i++){
// cout<<a[i]<<" ";
// }
for(int i=1;i<=n;i++){
if(a[i]>m){
cout<<i-1;
return 0;
}
else if(a[i]==m){
cout<<i;
return 0;
}
}
}
这次对了六个
#include<bits/stdc++.h>
using namespace std;
int a[186];
int main(){
int n,m;
int zs=0;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
if(m>=a[i]){
m-=a[i];
zs++;
}
else{
cout<<zs;
return 0;
}
}
}
又少对了一个,对了五个
#include<bits/stdc++.h>
using namespace std;
int a[186];
int main(){
int n,m;
int zs=0;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
if(m>=a[i]){
m-=a[i];
zs++;
}
else{
break;
}
}
cout<<zs;
}
终于都对了。。。