zoukankan      html  css  js  c++  java
  • hdu 4312 Meeting point2 夜

    http://acm.hdu.edu.cn/showproblem.php?pid=4312

    和 4311 的区别在于一个转换 自己还真想不出来

    max(|x|,|y|) 等于 max(|x-y|,|x+y|)/2

    原来的两点 (x1,y1)   (x2,y2)  转换为   (x1-y1,x1+y1)  (x2-y2,x2+y2) 

    最后记得除以2

    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    #include<cstring>
    #include<cmath>
    #include<map>
    #include<queue>
    #include<cmath>
    #define LL long long
    
    using namespace std;
    const int N=100005;
    
    struct node
    {
        int I;
        LL x,y;
    }mem[N];
    LL l[N];
    LL sumx[N];
    LL sumy[N];
    bool cmp1(node a,node b)
    {
        return a.x<b.x;
    }
    bool cmp2(node a,node b)
    {
        return a.y<b.y;
    }
    int main()
    {
       int T;
       scanf("%d",&T);
       while(T--)
       {
           int n;
           scanf("%d",&n);
           for(int i=1;i<=n;++i)
           {
               LL x,y;
               cin>>x>>y;
               mem[i].x=x-y;
               mem[i].y=x+y;
               mem[i].I=i;
           }
           sort(mem+1,mem+n+1,cmp1);
           l[0]=0;
           for(int i=1;i<=n;++i)
           {
               l[i]=l[i-1]+mem[i].x;
           }
           for(int i=1;i<=n;++i)
           {
               sumx[mem[i].I]=((i-1)*mem[i].x-l[i-1])+((l[n]-l[i])-(n-i)*mem[i].x);
           }
           sort(mem+1,mem+n+1,cmp2);
           l[0]=0;
           for(int i=1;i<=n;++i)
           {
               l[i]=l[i-1]+mem[i].y;
           }
           for(int i=1;i<=n;++i)
           {
               sumy[mem[i].I]=((i-1)*mem[i].y-l[i-1])+((l[n]-l[i])-(n-i)*mem[i].y);
           }
           LL ans=sumx[1]+sumy[1];
           for(int i=2;i<=n;++i)
           {
               if(sumx[i]+sumy[i]<ans)
               ans=sumx[i]+sumy[i];
           }
           cout<<(ans/2)<<endl;
       }
       return 0;
    }
    

      

  • 相关阅读:
    Element 更新以及全局设置属性
    第二次作业
    软件工程---自我介绍
    git lfs
    SUID
    G1 log 解析
    CMS jvm flags详解
    java不安全证书报证书路径找不到问题
    记一次CMS unloading class 耗时长调查
    springboot jsp 在Linux中报404问题
  • 原文地址:https://www.cnblogs.com/liulangye/p/2612204.html
Copyright © 2011-2022 走看看