求助,T飞了
查看原帖
求助,T飞了
209682
一群小饼干楼主2021/12/31 17:46

如何优化?求解答

#include<bits/stdc++.h>
using namespace std;
const int N=100100;
int n,m;
int a[N];
inline int read() {
	int res=0,o=1;
	char c=getchar();
	while(c<'0'||c>'9') {
		if(c=='-') {
			o=-1;
			c=getchar();
		}
	}
	while(c>='0'&&c<='9') {
		res=res*10+c-'0';
		c=getchar();
	}
	return res*o;
}
int main() {
	n=read();
	m=read();
	for(int i=1; i<=n; i++) a[i]=read();
	sort(a+1,a+1+n);
	int ans=0;
	for(int i=2;i<n;i++) ans+=a[i];
	do {
		ans+=min(m,n-2);
		m-=min(m,n-2);
		if(m<=0) {
			printf("%d",ans);
			return 0;
		}
		m--;
	}while(1);
	return 0;
}
2021/12/31 17:46
加载中...