雙指針

i j 在跑

滑動視窗

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

int s=20;
int n = 7;
int a[7] = {2,6,4,3,6,8,9};

int main(){
	int M = INT_MIN;
	for(int l=0,r=0;l<7 && r<7;){
		int sum = 0;
		for(int i=l;i<r;++i){
			sum+=a[i];
		}
		if(sum>s){
			++l;
		}
		if(sum==s){
			M=s;
			break;
		}
		if(sum<s){
			M = max(M,sum);
			++r;
		}
	}
	cout << M << endl;
}

Last updated

Was this helpful?