问关于最大子段和
  • 板块学术版
  • 楼主__er
  • 当前回复12
  • 已保存回复12
  • 发布时间2023/2/14 22:12
  • 上次更新2023/10/24 00:45:28
查看原帖
问关于最大子段和
713955
__er楼主2023/2/14 22:12

rt,无意中发现了这种做法:

//#pragma GCC optimize(3,"Ofast")
//#pragma GCC target("sse,sse2,sse3,ssse3,sse4.1,sse4.2,avx,avx2,popcnt,tune=native")
#include <bits/stdc++.h>
#define JS ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr)
using namespace std;
int n, x, mx, sum[100001], T, t;

int main() {
	JS;
	cin >> T;
	while (T--) {
		mx = -0x3f3f3f, t = 0;
		memset(sum, 0, sizeof(sum));
		cin >> n;
		for (int i = 1; i <= n; i++) {
			cin >> sum[i];
			t += sum[i];
			t = max(0, t);
			mx = max(mx, t);
		}
		cout << mx << '\n';
	}
	return 0;
}

O(n)O(n) 本地评测可过,正确性如何证明?

2023/2/14 22:12
加载中...