都改longlong了还9WA
查看原帖
都改longlong了还9WA
354157
Sophon_楼主2020/8/1 16:13
#include <bits/stdc++.h>
using namespace std;
long long n,m,mid,q=0,p;
	long long a[10000010]={0};
int f(long long x){
	long long s=0;
	for(long long i=0;i<n;i++){
		if(x<a[i]){
			s=s+a[i]-x;
		}
	}
	return s;
}
int main(){
	
	scanf("%lld%lld",&n,&m);
	for(long long i=0;i<n;i++){
		scanf("%lld",&a[i]);
	}
	sort(a,a+n);
	p=a[n-1];
	mid=(q+p)/2;
	while(q<=p){
		mid=(q+p)/2;
		if(f(mid)>m){
			q=mid+1;
		}
		else if(f(mid)<m){
			p=mid-1;
		}
		else {
			printf("%lld",mid);
			break;
		}
	}
	
	return 0;
}
2020/8/1 16:13
加载中...