题目:
Description
小猫咪玩游戏,现在有n张牌依次放在地上,牌上有数字,数字的范围是-20~20,正数表示可以奖励对应数目的猫粮,负数表示减去对应数量猫粮。猫咪可以从中连续选择k张牌, 0<=k<=n(k=0表示不选牌,即0包猫粮),即能获得数量为k张牌的数字之和的猫粮。
实现一个函数,求出猫咪最多能获取几包猫粮,1<=数组长度<=100。已提供main函数解决输入输出,只需要实现函数即可
Input
n+1行
第一行一个数字,数组长度n。
接下来的n行输入数组的数字
Output
输出猫咪所能获得的最多猫粮数量
int maxFood (int arr[],int len){
int sum=0;int tmp=0;
for(int i=0;i<len;i++){
if(tmp>0){
tmp+=arr[i];
}
else{
tmp=arr[i];
}
sum=sum>tmp?sum:tmp;
}
return sum;
}