본문 바로가기

알고리즘

(117)
[Python] 백준 파이썬 11651 좌표 정렬하기2 https://www.acmicpc.net/problem/11651 11651번: 좌표 정렬하기 2 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net n = int(input()) dot_yx = [] for _ in range(n): x, y = map(int, input().split()) dot_yx.append([y,x]) #1 dot_yx.sort() #2 for i in dot_yx: print(i[1], i[0]) #3 # 1 : x, y 좌표를 받아서 dot_yx리스트에 서..
[Python] 백준 파이썬 11650 좌표 정렬하기 https://www.acmicpc.net/problem/11650 11650번: 좌표 정렬하기 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net # 백준 11650 좌표 정렬하기 n = int(input()) dot_list = [] for _ in range(n): dot = input().split() # 1 dot_list.append(dot) dot_list.sort() # 2 for i in dot_list: print(' '.join(i)) # 3 첫 제출 코드입니다. # 1..
[Python] 백준 파이썬 1427 소트인사이드 https://www.acmicpc.net/problem/1427 1427번: 소트인사이드 첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net n = list(input()) n.sort(reverse=True) reverse_n = ''.join(n) print(reverse_n) 입력받는 정수를 바로 리스트로 할당해줍니다. sort(reverse=True)로 내림차순 정렬 해줍니다. 정렬한 리스트를 공백 ('')으로 합쳐줍니다. 출력해줍니다. input()으로 입력을 받게되면 문자열로 받아와집니다. 따라서 리스트로 변환, join함수로 다시 합치기가 가능합니다.
[Python] 백준 파이썬 2108 통계학 https://www.acmicpc.net/problem/2108 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net import sys import numpy as np from collections import Counter n = int(input()) num = [] for _ in range(n): num.append(int(sys.stdin.readline())) if n == 1: print(num[0]) print(num[0]) print(num[0]) print(0) else: num.sort() num_cou..
[Python] 백준 파이썬 25305 커트라인 https://www.acmicpc.net/problem/25305 25305번: 커트라인 시험 응시자들 가운데 1등은 100점, 2등은 98점, 3등은 93점이다. 2등까지 상을 받으므로 커트라인은 98점이다. www.acmicpc.net # 백준 25305 커트라인 n, k = map(int, input().split()) # list(map())을 이용해 공백을 기준으로 입력받는 숫자들을 바로 리스트로 만들어줌 # sorted()를 이용해 리스트를 오름차순으로 정렬하고 x에 할당 x = sorted(list(map(int, input().split()))) # 오름 차순이므로 커트라인은 제일 뒤에서부터 계산 # -k 번째 사람까지 합격 print(x[-k])
[Python] 백준 파이썬 10989 수 정렬하기 3 https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net # 백준 10989 수 정렬하기 3 import sys n = int(input()) num=[] for _ in range(n): num.append(int(sys.stdin.readline())) for i in sorted(num): print(i) # 메모리 초과 뜸 # append를 할 때마다 메모리 재할당이 발생한다고 함 이 전과 비슷하게 진행하면 메모리 초과 에러발생 append로 리스트에 요소를 추가 ..
[Python] 백준 파이썬 2751 수 정렬하기 2 https://www.acmicpc.net/problem/2751 2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net # 백준 2751 수 정렬하기 2 import sys n = int(input()) num=[] for _ in range(n): num.append(int(sys.stdin.readline())) for i in sorted(num): print(i) 1. sys.stdin.readline() 으로 입력 받기 2. for loop에서 인자들 받아올 때 정렬된 리스트에서 바로 뽑아오기
[Python] 백준 파이썬 2750 수 정렬하기 https://www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net # 백준 2750 수 정렬하기 import sys n = int(input()) num = [] for _ in range(n): num.append(int(sys.stdin.readline())) # num.append(int(input())) sorted_num = sorted(num) for i in sorted_num: print(i) 반복되는 입력을 받는 방법은 2가지가 있습니다. 그냥 input..