NYOJ 8 一種排序

2021-08-18 18:38:08 字數 971 閱讀 7713

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:3

描述

現在有很多長方形,每乙個長方形都有乙個編號,這個編號可以重複;還知道這個長方形的寬和長,編號、長、寬都是整數;現在要求按照一下方式排序(預設排序規則都是從小到大);

1.按照編號從小到大排序

2.對於編號相等的長方形,按照長方形的長排序;

3.如果編號和長都相同,按照長方形的寬排序;

4.如果編號、長、寬都相同,就只保留乙個長方形用於排序,刪除多餘的長方形;最後排好序按照指定格式顯示所有的長方形;

輸入

第一行有乙個整數 0

輸出順序輸出每組資料的所有符合條件的長方形的 編號 長 寬

樣例輸入

1

81 1 1

1 1 1

1 1 2

1 2 1

1 2 2

2 1 1

2 1 2

2 2 1

樣例輸出

1 1 1

1 2 1

1 2 2

2 1 1

2 2 1

我的思路很簡單,複雜度比較高。沒有採用構造類的方式,構造類不知道會不會降低複雜度,想知道那些大佬怎麼降的那麼低的qaq

#includeconst int maxn=1000;

void change(int a,int b,int c,int i,int j)

int main()

{ int n;

scanf("%d",&n);

while(n--)

{ int m;

scanf("%d",&m);

int a[maxn],b[maxn],c[maxn];//分別儲存編號、長、寬

int temp;

for(int i=0;i

一種排序NYOJ 8

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現在有很多長方形,每乙個長方形都有乙個編號,這個編號可以重複 還知道這個長方形的寬和長,編號 長 寬都是整數 現在要求按照一下方式排序 預設排序規則都是從小到大 1.按照編號從小到大排序 2.對於編號相等的長方形,按照長方形的長...

nyoj 8 一種排序

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現在有很多長方形,每乙個長方形都有乙個編號,這個編號可以重複 還知道這個長方形的寬和長,編號 長 寬都是整數 現在要求按照一下方式排序 預設排序規則都是從小到大 1.按照編號從小到大排序 2.對於編號相等的長方形,按照長方形的長...

nyoj 8 一種排序

現在有很多長方形,每乙個長方形都有乙個編號,這個編號可以重複 還知道這個長方形的寬和長,編號 長 寬都是整數 現在要求按照一下方式排序 預設排序規則都是從小到大 1.按照編號從小到大排序 2.對於編號相等的長方形,按照長方形的長排序 3.如果編號和長都相同,按照長方形的寬排序 4.如果編號 長 寬都...