2024/02 16

백준 > 10989 수 정렬하기 3

브론즈 1이라 만만하게 보고 덤볐다가 호되게 당한.. 문제였다. 이 문제의 채점 현황을 보면 메모리 초과, 시간 초과, 컴파일 에러 등등 다양한 에러를 볼 수 있다. 나 역시 골고루 수집한 문제.. 우선, 파이썬으로 저 문제를 푸는 것 자체는 매우 간단하다. a = int(input()) arr = [] for i in range(a): arr.append(int(input())) arr.sort() for i in range(a): print(arr[i]) 하지만 이렇게 풀면 메모리 초과가 발생한다. 우리는 이 문제의 조건을 잘 봐야 하는데, n은 1 ~ 10,000,000개의 10,000보다 작거나 같은 자연수를 입력받게 된다. 입력받는 자연수의 범위가 좁기 때문에 크기가 10000인 리스트를 하나 ..

백준 > 1764 듣보잡

#틀린 코드1 a, b = map(int, input().split()) arr = [] brr = [] test = [] for i in range(a): arr.append(input()) for i in range(b): brr.append(input()) for i in range(len(arr)): if arr[i] in brr: test.append(arr[i]) print(len(test)) test.sort() for i in range(len(test)): print(test[i]) 최초로 짠 코드는 위와 같다. 무려 for문이 4개나 사용되었고, 단순하게 a와 b의 값을 입력받아 그 수만큼 문자열을 입력받고, in을 사용해 존재할 경우 test 리스트에 추가하는 방식이다. 근데 이 코드..

백준 > 2750 수 정렬하기

a = int(input()) arr = [] for i in range(a): arr.append(int(input())) arr.sort() for i in range(a): print(arr[i]) 원래 이 문제 말고, 다른 정렬 문제를 풀었는데 시간 초과와 메모리 초과가 발생했다.. 이에 분노한 나는 정렬의 고수가 되겠다고 다짐하며 당분간 정렬 문제를 풀 것이다.. 그나저나 저번에 하루에 5문제인가 푼 이후로 백준이랑 권태기가 왔다. 초록칸을 위해 풀게 되는 느낌..