https://www.acmicpc.net/problem/10989

 

10989번: 수 정렬하기 3

첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다.

www.acmicpc.net

- 시간제한은 널널, 반면 메모리 제한이 타이트한 문제이다.

- 즉 n의 숫자가 매우 크므로 이걸 배열로 받아서 정렬을 하면 메모리초과가 발생한다는 뜻

- 그래서 다른 조건을 찾아봤다.

- 눈에 들어온 건 # 이 수는 10,000보다 작거나 같은 자연수이다. #

- 즉 배열에다가 입력 숫자들을 넣는것이 아니라

- 입력숫자들을 배열의 index라고 생각을하고 그 입력숫자가 들어올때 마다 arr[입력숫자]의 값을 1증가시켜주는 식으로

- 체크가 가능하다.

- 그리고 마지막 출력을 index순서대로 하면서 그 배열[index]의 값만큼 반복 출력을 하면 된다.

'학부생 공부 > 연습문제(백준)' 카테고리의 다른 글

백준 10818  (0) 2019.12.25
백준 10757 큰 수 A+B  (0) 2019.11.24
백준 10773 제로  (0) 2019.11.16
백준 1874 스택수열  (0) 2019.11.14
백준 2292 벌집  (0) 2019.11.13

+ Recent posts