如果你10分,只过1
查看原帖
如果你10分,只过1
566243
zzx12345678楼主2024/6/7 16:57
sort(a+1,a+n+1);
	w=n;
	for(int i=1;i<=n;i++){
		ans+=w*a[i];
		w--;
	}
	cout<<ans-a[1]<<endl;

猜你使用了类似上面这种逻辑的解法。 事实上这种做法是错误的,正解应该每次都取最小的的两个合并,而上述代码无法确保每次合并的两个都是最小的。

hack:

4

3 5 6 7

正确答案42

2024/6/7 16:57
加载中...