蒟蒻wa on #15 求助
查看原帖
蒟蒻wa on #15 求助
681941
OIer_Hhy楼主2024/6/1 14:45
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int maxn=4e5;
int H,n,a[maxn],sum[maxn];
signed main(){
	cin>>H>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		sum[i]=sum[i-1]+a[i];
	}
	for(int i=1;i<=n;i++){
		if(sum[i]+H<=0){
			cout<<i<<endl;
			return 0;
		}
	}
	int atk=sum[n];
	if(atk>=0){
		cout<<-1<<endl;
		return 0;
	} 
	atk=-atk;
	double ans=5e18;
	for(int i=1;i<=n;i++){
		double tmp=ceil((H+sum[i])*1.0/atk)*n+i;
		ans=min(ans,tmp);
	}
	printf("%.0lf",ans);
	return 0;
}

2024/6/1 14:45
加载中...