#34598: 請問如何才能不超時?


s110128@student.cysh.cy.edu.tw (梁家華)


#include <bits/stdc++.h>

 

using namespace std;

int x[1000005],y[100005];

int main()

{

        

    ios::sync_with_stdio(false);

    cin.tie(0);

 

    int t,n,m;

    unsigned long long int ans;

    while(cin>>t)

    {

        while(t--)

        {

            cin>>n;

            for(int i=0;i<n;i++)

            cin>>x[i]>>y[i];

 

            sort(x,x+n);

            sort(y,y+n);

       

            if(n%2==0)

                m=n/2;

            else

                m=(n-1)/2;

        

            ans=0;

            for (int i=0;i<n;i++)

                ans+=abs(x[i]-x[m])+abs(y[i]-y[m]);

            cout<<ans<<endl;

        }

    }

return 0;   

}

 

 

 

最後一筆資料一直 TLE

請問各位大老有沒有辦法解決

#34613: Re: 請問如何才能不超時?


cges30901 (cges30901)


#include

 

using namespace std;

int x[1000005],y[100005];

int main()

{

        

    ios::sync_with_stdio(false);

    cin.tie(0);

 

    int t,n,m;

    unsigned long long int ans;

    while(cin>>t)

    {

        while(t--)

        {

            cin>>n;

            for(int i=0;i

            cin>>x[i]>>y[i];

 

            sort(x,x+n);

            sort(y,y+n);

       

            if(n%2==0)

                m=n/2;

            else

                m=(n-1)/2;

        

            ans=0;

            for (int i=0;i

                ans+=abs(x[i]-x[m])+abs(y[i]-y[m]);

            cout<

        }

    }

return 0;   

}

 

 

 

最後一筆資料一直 TLE

請問各位大老有沒有辦法解決


我的作法是輸入不要用cin,用getchar_unlocked()做一個輸入的函式

AC 1.1s