USACO 2012 Mar Haybale Restacking 重排干草
2014-02-05 00:16
411 查看
假设对于所有位置都只从其左边一个位置搬运干草过去,则可设ab[i]为i号位接收到的干草数量。ab[i]=a[i-1]-b[i-1]+ab[i-1];
根据ab[i]排序。
这里要采用快速排序,不然超时。
ps:这个程序用不到long long int。不知道为啥当时也许是本博主脑抽了都写了long long int。
根据ab[i]排序。
这里要采用快速排序,不然超时。
ps:这个程序用不到long long int。不知道为啥当时也许是本博主脑抽了都写了long long int。
#include<cstdio> #include<cstdlib> #include<ctime> long long int n,a[100001],b[100001],ab[100001],ans,tmp; void swap(long long int &a,long long int &b) { long long int tmp=a; a=b; b=tmp; } void sort(long long int l,long long int r) { long long int key=ab[rand()%(r-l+1)+l]; long long int i=l,j=r; while(i<=j) { while(ab[i]<key) i++; while(ab[j]>key) j--; if(i<=j) { swap(ab[i],ab[j]); swap(a[i],a[j]); swap(b[i],b[j]); i++; j--; } } if(l<j) sort(l,j); if(i<r) sort(i,r); } int main() { srand(time(NULL)); freopen("restack.in","r",stdin); freopen("restack.out","w",stdout); scanf("%lld",&n); for(int i=1;i<=n;i++) { scanf("%lld%lld",&a[i],&b[i]); ab[i]=a[i-1]-b[i-1]+ab[i-1]; } ab[1]=a -b +ab ; sort(1,n); if(n%2==0) tmp=ab[n/2]; else tmp=ab[n/2+1]; for(int i=1;i<=n;i++) { ans+=abs(ab[i]-tmp); } printf("%lld\n",ans); fclose(stdin); fclose(stdout); return 0; }
相关文章推荐
- 2620: [Usaco2012 Mar]Haybale Restacking
- BZOJ2620 [Usaco2012 Mar]Haybale Restacking
- bzoj2620[Usaco2012 Mar]Haybale Restacking
- BZOJ_P1682 [Usaco2005 Mar]Out of Hay 干草危机(最小生成树)
- bzoj1615 【Usaco2008 Mar】The Loathsome Hay Baler 麻烦的干草打包机
- [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
- bzoj 1682: [Usaco2005 Mar]Out of Hay 干草危机(最小生成树)
- 洛谷P2903 [USACO08MAR]麻烦的干草打包机The Loathesome Hay Baler
- BZOJ 1615: [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
- BFS-BZOJ-1615-[Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
- 【BZOJ】1682: [Usaco2005 Mar]Out of Hay 干草危机(kruskal)
- BZOJ 1615: [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机 bfs
- BZOJ 1615: [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
- bzoj1615 [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
- bzoj1615 [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机
- bzoj 1682: [Usaco2005 Mar]Out of Hay 干草危机【并查集+二分】
- 【最小生成树】BZOJ1682[Usaco2005 Mar]-Out of Hay 干草危机
- 1682: [Usaco2005 Mar]Out of Hay 干草危机
- BZOJ 1682: [Usaco2005 Mar]Out of Hay 干草危机
- BZOJ 1615: [Usaco2008 Mar]The Loathesome Hay Baler麻烦的干草打包机