题解 P3040 【[USACO12JAN]贝尔分享Bale Share】
给大家看一段非常神奇的代码:
提供一个90分的做法(骗分大法)
void dis()
{
random_shuffle(a+1,a+1+n);
int k=0,maxx=0;
for(int i=1;i<=n/3;++i)
k+=a[i];
maxx=k;k=0;
for(int i=n/3+1;i<=2*n/3;++i)
k+=a[i];
maxx=max(maxx,k);k=0;
for(int i=2*n/3+1;i<=n;++i)
k+=a[i];
maxx=max(maxx,k);
ans=min(ans,maxx);
}
int main()
{
n=fastRead();
for(int i=1;i<=n;++i)a[i]=fastRead();
for(int i=1;i<=1000000;++i)dis();
printf("%d",ans);
return 0;
}
对!就这货能拿90分!(第六个点死活过不去)
本来n就很小,我们再随机一下。。。哈哈哈哈哈哈(仰天长啸)