您的答案為: 0 0 正確答案為: 25381 18377
您的答案為: 0 0 正確答案為: 1 0
您的答案為: 0 36 正確答案為: 0 3
#include<iostream>
using namespace std;
int main()
{
int n,x[100000],y[100000];
while(cin>>n)
{
int i,j;
for(i=0;i<n;i++)
cin>>x[i]>>y[i];
for(i=n-1;i>1;i--)
for(j=0;j<n;j++)
if(x[j]>x[j+1])
{
swap(x[j],x[j+1]);
swap(y[j],y[j+1]);
}
for(i=0;i<n-1;i++)
for(j=0;j<n-1;j++)
if(x[i]==x[i+1] && y[i]>y[i+1])
{
swap(y[i],y[i+1]);
}
for(i=0;i<n;i++)
cout<<x[i]<<" "<<y[i]<<endl;
}
}
您的答案為: 0 0 正確答案為: 25381 18377
您的答案為: 0 0 正確答案為: 1 0
您的答案為: 0 36 正確答案為: 0 3
#include
using namespace std;
int main()
{
int n,x[100000],y[100000];
while(cin>>n)
{
int i,j;
for(i=0;i<n;i++)
cin>>x[i]>>y[i];
for(i=n-1;i>1;i--)
for(j=0;j<n;j++)
if(x[j]>x[j+1])
{
swap(x[j],x[j+1]);
swap(y[j],y[j+1]);
}
for(i=0;i<n-1;i++)
for(j=0;j<n-1;j++)
if(x[i]==x[i+1] && y[i]>y[i+1])
{
swap(y[i],y[i+1]);
}
for(i=0;i<n;i++)
cout<<x[i]<<" "<<y[i]<<endl;
}
}
斜線粗體的這塊
如果排完x的值
到了這個階段
假客有3組數據;(0,5) (0,6) (0,3)
因為你比完後沒跟後面比到
事實上你的程式碼只會排成(0,5) (0,3) (0,6)
再想想看要怎麼做吧