洛谷 統計數字 NOIP2007提高組複賽

2022-05-13 04:12:16 字數 1355 閱讀 7121

題目描述description

某次科研調查時得到了n個自然數,每個數均不超過1500000000(1.5*10^9)。已知不相同的數不超過10000個,現在需要統計這些自然數各自出現的次數,並按照自然數從小到大的順序輸出統計結果。

輸入輸出格式input/output

輸入格式:

輸入檔案count.in包含n+1行;

第一行是整數n,表示自然數的個數;

第2~n+1每行乙個自然數。

輸出格式:

輸出檔案count.out包含m行(m為n個自然數中不相同數的個數),按照自然數從小到大的順序輸出。每行輸出兩個整數,分別是自然數和該數出現的次數,其間用乙個空格隔開。

輸入輸出樣例sample input/output

樣例測試點#1

輸入樣例:

824

245100

2100

輸出樣例:

2 3

4 25 1

100 2

說明description

40%的資料滿足:1<=n<=1000

80%的資料滿足:1<=n<=50000

100%的資料滿足:1<=n<=200000,每個數均不超過1500 000 000(1.5*109)

noip 2007 提高第一題

思路:首先要對輸入的資料進行公升序排序,然後從頭開始找數字出現的個數,找過的記得標記(我這裡標記為-100),然後計數器++即可

**如下:

1 #include 2 #include 3

int fun(const

void *a,const

void *b)//

公升序排序 4

7int

main()

817 qsort(a,n,sizeof(int

),fun);

18for(i=0;i)

19 30}

31 printf("

%d %d

",lala,ans);

32 printf("\n"

);33 ans=0;34

} 35}

36return0;

37 }

NOIP 2007 統計數字

題目描述 某次科研調查時得到了n個自然數,每個數均不超過1500000000 1.5 109 已知不相同的數不超過10000個,現在需要統計這些自然數各自出現的次數,並按照自然數從小到大的順序輸出統計結果。輸入每組輸入資料報含n 1行 第一行是整數n,表示自然數的個數 第2 n 1行,每行乙個自然數...

2 2 7 統計數字 Noip2007

7 統計數字 noip2007 問題描述 某次科研調查時得到了n個自然數,每個數均不超過1500000000 1.5 109 已知不相同的數不超過10000個,現在需要統計這些自然數各自出現的次數,並按照自然數從小到大的順序輸出統計結果。輸入格式 輸入檔案count.in包含n 1行 第1行是整數n...

洛谷 1097 統計數字

這道題目就是一道很為簡單的模擬題。但是,我從做這道題中,發現了一種思維的轉換。對於簡單的題目,不應該想的太過於糾纏。雖然都能做對,但是map的做法最慢,hash較快,而用類似單調佇列的思想的模擬看起來見簡潔,跑得也最快 如下可以什麼都不管,將a陣列排序 從小到大 顯然是乙個單調的佇列,而我們只需要比...