5 条题解

  • 0
    @ 2022-7-17 15:25:44
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
    	int n;
    	cin>>n;
    	int a[100000],b[10000];
    	for (int m=1;m<=n;m++)
    	{
    		cin>>a[m]>>b[m];
    		
    	}
    	for (int i=1;i<=n;i++)
    	{
    		for (int j=n;j>i;j--)
    		{
    			if (b[j]<b[j-1])
    			{
    				swap(b[j],b[j-1]);
    				swap(a[j],a[j-1]);
    			}
    		}
    	}
    	int s=0;
    	for (int i=1;i<=n;i++)
    	{
    		if (n%2==0)
    			s=s+abs(b[i]-b[n/2]);
    		if (n%2!=0)
    			s=s+abs(b[i]-b[n/2+1]);
    	}
    	sort(a+1,a+n+1);
    	int h=0;
    	for (int i=1;i<=n;i++)
    	{
    		a[i]=a[i]-h;
    		h++;
    	}
    	sort(a+1,a+n+1);
    	int x=a[n/2+1];
    	for (int i=1;i<=n;i++)
    	{
    		s=s+abs(a[i]-x);
    	}
    	cout<<s;
    	return 0;
    }
    

    信息

    ID
    306
    时间
    1000ms
    内存
    128MiB
    难度
    6
    标签
    递交数
    222
    已通过
    64
    上传者