求助,40分,玄关
查看原帖
求助,40分,玄关
1032871
QAQ_liu楼主2024/7/21 20:58

题目

#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,a[500005],b=7;
int maxx(int x,int y){
	int k=-1e9;
	for(int i=x;i<=y;i++){
		k=max(k,a[i]);
	}
	return k;
}
int m(int x,int y){
	if(y-x<=5) return maxx(x,y);
	return (m(x,(x+y)/2)%max(maxx((x+y)/2+1,y),b))+(a[(+y)/2]-1);
}
signed main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	cout<<m(1,n);
	return 0;
}
2024/7/21 20:58
加载中...