牛客真题(19)-空中旅行

今天继续刷牛客真题,找到容器能存放最多的元素个数。

分析:
遍历整个数组,并进行累加,同时判断是否溢出。

问题:
1、Python中没有i++,因此输出的时候不会出现越界的情况,可以在循环内添加一个变量自加一;

附上C++代码:

#include<iostream>
#include<vector>
using namespace std;
int main()
{
    int n,s;
    cin>>n>>s;
    vector<int> t;
    for(int i=0;i<n;i++)
    {
        int x;
        cin>>x;
        t.push_back(x);
    }
    int sum=0,i;
    for(i=0;i<n;i++)
    {
        sum+=t[i];
        if(sum>s)
            break;
    }
    cout<<i<<endl;
    return 0;
}

附上Python代码:

n,s=map(int,input().split())
t=list(map(int,input().split()))
for i in range(len(t)):
    s-=t[i]
    if s<0:
        break
if s>0:
    print(i+1)
else:
    print(i)

猜你喜欢

转载自blog.csdn.net/JerryZengZ/article/details/89306547