文章

150

粉丝

0

获赞

558

访问

23.2k

头像
复旦-最大连续子序列 题解:
P1826 复旦大学机试
发布于2026年2月14日 15:36
阅读数 98

#include <bits/stdc++.h>
using namespace std;

int main() {    
    int k;
    while (cin >> k) {
        vector<int> a(k);
        for (int i = 0; i < k; i++)
            cin >> a[i];            
        long long curSum = a[0];   // 当前连续子序列和    
        long long maxSum = a[0];   // 全局最大和
        for (int i = 1; i < k; i++) {
            if (a[i]+curSum >= a[i])
                curSum += a[i];
   			else
                curSum = a[i];           		
            if (curSum > maxSum) 
                maxSum = curSum;
        }        
        cout << maxSum << endl;
    }    
    return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发