nyoj 263 精挑細選

2021-06-25 22:02:23 字數 1348 閱讀 5898

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:1 描述

小王是公司的倉庫管理員,一天,他接到了這樣乙個任務:從倉庫中找出一根鋼管。這聽起來不算什麼,但是這根鋼管的要求可真是讓他犯難了,要求如下:1、

這根鋼管一定要是倉庫中最長的;2、

這根鋼管一定要是最長的鋼管中最細的;3、

這根鋼管一定要是符合前兩條的鋼管中編碼最大的(每根鋼管都有乙個互不相同的編碼,越大表示生產日期越近)。

相關的資料到是有,可是,手工從幾百份鋼管材料中選出符合要求的那根……

要不,還是請你編寫個程式來幫他解決這個問題吧。

輸入

第一行是乙個整數n(n<=10)表示測試資料的組數)

每組測試資料的第一行 有乙個整數m(m<=1000),表示倉庫中所有鋼管的數量,

之後m行,每行三個整數,分別表示一根鋼管的長度(以公釐為單位)、直徑(以公釐為單位)和編碼(乙個9位整數)。

輸出對應每組測試資料的輸出只有乙個9位整數,表示選出的那根鋼管的編碼,

每個輸出佔一行

樣例輸入

2

22000 30 123456789

2000 20 987654321

43000 50 872198442

3000 45 752498124

2000 60 765128742

3000 45 652278122

樣例輸出

987654321

752498124

題目大意:在鋼管中找出長度最長,直徑最細,編號最大的乙個

難點:所有條件都要滿足

關鍵點:對所給鋼管進行排序

解題思路:用sort函式進行結構體的**排序,先把長度按降序排列,長度相等的把直徑公升序排列,長度直徑都相等的把編號降序排列

最後輸出陣列的第乙個數就是滿足條件的那個鋼管

體會:對sort對結構體的多級排序進行了練習,題目難度不大,但也出現了乙個新問題,怎麼用memset函式對結構體裡邊的字元陣列清0

要去解決。

************************/

#include#include#includeusing namespace std;

struct inforgangguan[1100];

bool cmp(struct infor a,struct infor b)

}int main(){

int n,i,n;

scanf("%d",&n);

while(n--){

scanf("%d",&n);

for(i=0;i

nyoj263精挑細選

這道題思路應該不少,這類題也很常見,就是有三個量讓你進行比較,按照一定的順序和一定的規則進行排布,然後輸出相關的量,這道題我一共有兩種方法,第一種比較繁瑣,但是就是熟練一下類的使用,第二種是比較簡單的方法,我都貼上,你可以比較一下。精 挑 細 選 時間限制 3000 ms 記憶體限制 65535 k...

題目263 精 挑 細 選

時間限制 3000 ms 記憶體限制 65535 kb 難度 1 描述 小王是公司的倉庫管理員,一天,他接到了這樣乙個任務 從倉庫中找出一根鋼管。這聽起來不算什麼,但是這根鋼管的要求可真是讓他犯難了,要求如下 1 這根鋼管一定要是倉庫中最長的 2 這根鋼管一定要是最長的鋼管中最細的 3 這根鋼管一定...

NYOJ 精 挑 細 選

題目描述 小王是公司的倉庫管理員,一天,他接到了這樣乙個任務 從倉庫中找出一根鋼管。這聽起來不算什麼,但是這根鋼管的要求可真是讓他犯難了,要求如下 1 這根鋼管一定要是倉庫中最長的 2 這根鋼管一定要是最長的鋼管中最細的 3 這根鋼管一定要是符合前兩條的鋼管中編碼最大的 每根鋼管都有乙個互不相同的編...