๋จ์ํ ์ ๋ ฌํ๋ ๋ฌธ์ ์ธ์ค ์๊ณ qsort๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ์ผ๋, ๋ฉ๋ชจ๋ฆฌ์ด๊ณผ๊ฐ ๋ฐ์ํ๋ค.
๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ์ ์ต๋ 8MB๊น์ง๋ก, ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ์ ์ ์ํด์ผ ํ๋ค.
์ผ๋ฐ์ ์ผ๋ก ๋ฐฐ์ด์ ๋ชจ๋ ์ ๋ ฅ์ ์ ์ฅํด์ sorting์ ์งํํ์ง๋ง, ์ด ๋ฌธ์ ์์ ๋ฉ๋ชจ๋ฆฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์๋ ๋ฐฐ์ด์ ์ ๋ ฅ ๊ฐ์ ์ ์ฅํ๋ฉด ์ ๋๋ค. ๋ฐ๋ผ์ ์ ๋ ฅ๋ฐ์ ๋๋ง๋ค ํด๋น ์๋ฅผ ์ธ๋ฑ์ค๋ก ํด๋น ์์ ๋ํ ์นด์ดํ ์ ํ๋๋ก ํ๋ค. ๊ทธ๋ผ ๊ฐ ์ธ๋ฑ์ค๋ง๋ค ์๊ฐ ๋ช ๋ฒ ๋ํ๋๋์ง ์ ์ ์์ผ๋ฏ๋ก ์ถ๋ ฅ ์ ์ธ๋ฑ์ค์ ๋ํ ๊ฐ๋งํผ ๋ฐ๋ณตํ์ฌ ์ธ๋ฑ์ค ๊ฐ์ ์ถ๋ ฅํ๋๋ก ํ๋ค. ํด๋น sorting ๋ฐฉ๋ฒ์ ์นด์ดํ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
๋ ์ฃผ์ํ ์ ์, ๋ฐฐ์ด ํฌ๊ธฐ๋ ์ ๋ ฅ๋ฐ๋ ๊ฐ์ธ N์ด์ง๋ง, ๋ฐฐ์ด ํฌ๊ธฐ๋ฅผ N์ผ๋ก ์ก๊ฑฐ๋ ์ถ๋ ฅ ์ N๋งํผ ๋ฐ๋ณต๋ฌธ์ ๋๋ฆฌ๋ฉด ๋ฉ๋ชจ๋ฆฌ์ด๊ณผ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค. 1 ≤ N ≤ 10,000,000 ์ธ๋ฐ, ์์ ๋ฒ์๋ 10,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ฏ๋ก ๋ฐฐ์ด์ ํฌ๊ธฐ๋ 10,000 ์ธ๋ฑ์ค๊น์ง๋ง ๋ด์ ์ ์์ผ๋ฉด ๋๊ณ , ์ถ๋ ฅ ์์๋ 10,000 ๋ฒ์์ ์๋ง ๊ณ ๋ คํ๋ฉด ๋๋ค.
#include <bits/stdc++.h>
using namespace std;
int main(){
int N;
scanf("%d", &N);
int count[10001]={0,};
for(int i=0; i<N; i++){
int num; scanf("%d", &num);
count[num]++;
}
for(int i=0; i<10001; i++){
for(int j=0; j<count[i]; j++) printf("%d\n", i);
}
}
[๋ฐฑ์ค(BOJ)] 10828๋ฒ: ์คํ (์คํ, C++) (0) | 2021.08.07 |
---|---|
[๋ฐฑ์ค(BOJ)] 11652๋ฒ: ์นด๋ (์ ๋ ฌ, C++) (0) | 2021.08.06 |
[๋ฐฑ์ค(BOJ)] 11004๋ฒ: K๋ฒ์งธ ์ (์ ๋ ฌ, C++) (0) | 2021.08.04 |
[๋ฐฑ์ค(BOJ)] 10825๋ฒ: ๊ตญ์์ (์ ๋ ฌ, C++) (0) | 2021.03.10 |
[๋ฐฑ์ค(BOJ)] 10814๋ฒ: ๋์ด์ ์ ๋ ฌ (์ ๋ ฌ, C++) (0) | 2021.03.10 |