zoukankan      html  css  js  c++  java
  • POJ1723(中位数)

    x坐标排序后-相应第为第几个

    若本来就相邻减后值相同

    如 2 3 4 8 9

    减后 1 1 1 4 4

    所以往中位数移就好

    #include<cstdio>
    #include<algorithm>
    using namespace std;
    
    const int maxn=10000+10;
    
    int y[maxn];
    int x[maxn];
    
    int main(){
        int n;
        int ans1=0,ans2=0;
        scanf("%d",&n);
        for (int i=1;i<=n;i++){
            scanf("%d",&x[i]);
            scanf("%d",&y[i]);
        }
        sort(x+1,x+1+n);
        sort(y+1,y+1+n);
        int mid=y[(n>>1)+1];
        for (int i=1;i<=n;i++){
            ans1+=abs(y[i]-mid);
        }
        for (int i=1;i<=n;i++) x[i]-=i;
        sort(x+1,x+1+n);
        mid=x[(n>>1)+1];
        for (int i=1;i<=n;i++) ans2+=abs(x[i]-mid);
        printf("%d
    ",ans1+ans2);
    return 0;
    }
  • 相关阅读:
    2020.11.21日记
    Miller-Rabin质数测试
    Deepin配置记录
    shell
    module load
    vma
    DRDI
    Android.mk
    AEE
    阿里云下配置二级域名的解析设置
  • 原文地址:https://www.cnblogs.com/lmjer/p/8970738.html
Copyright © 2011-2022 走看看