본문 바로가기

분류 전체보기227

코딩테스트 준비 - 백준1181번 단어 정렬 풀이: 파이썬 문자열 정렬(파이썬) 백준 1181번 풀이 문제풀러가기 https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 문제 풀이 1. 문자열 길이가 가장 작은 순으로 정렬 len(string) 사용 2. 문자열 길이가 같을 시, 사전순으로 정렬 문자열 비교 사용: string1>string2 3. 리스트 중복제거 사용 arr_list = list(set(arr_list)) 코드 import sys N = int(sys.stdin.readline()) arr = [] a.. 2021. 6. 5.
코딩테스트 준비 - 백준11651번 좌표 정렬하기 풀이(간단한 풀이)(파이썬) 백준 11651번 풀이 문제풀러가기 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 문제 풀이 1. y가 제일 작은 순서대로 출력 2. y가 같을 시 x가 작은 순서대로 출력 코드 import sys N = int(sys.stdin.readline()) arr = [] for i in range (N): (a,b) = map(int,sys.stdin.readline().split()) a.. 2021. 6. 4.
코딩테스트 준비 - 백준11650번 좌표 정렬하기 풀이(간단한 풀이):파이썬 튜플 괄호 없애기 (파이썬) 백준 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 문제 풀이 1. x좌표가 작은것 부터 출력한다. 2. x좌표가 같을 시 y좌표를 비교해 y좌표가 더 작은 것을 먼저 출력한다. 코드1 import sys N = int(sys.stdin.readline()) arr = [] for i in range (N): arr.append(tuple(map(int,sys.. 2021. 6. 3.
코딩테스트 준비 - 백준1427번 풀이:파이썬 숫자 정렬(파이썬) 백준 1427번 풀이 문제 풀러 가기 https://www.acmicpc.net/problem/1427 1427번: 소트인사이드 첫째 줄에 정렬하고자하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 문제 풀이 1. int를 string 형으로 바꿔야지 정렬이 가능. 2. 리스트 정렬 및 거꾸로 출력 코드 import sys N = int(sys.stdin.readline()) arr = [] for i in str(N): arr.append(i) arr.sort(reverse=True) print("".join(arr)) 코딩 테스트 문제를 풀 때는 되도록 input보다는 sys.stdin.readline을 쓰려고 합니다. 도움이 됐다면 하트.. 2021. 6. 3.
파이썬 - 리스트 원소 개수 구하기/collections모듈의 Counter클래스 활용 예제 collections모듈의 Counter클래스 Counter클래스 활용 from collections import Counter arr=[1,2,3,3,6,2,1,4,4,4,5,5,5] cnt = Counter(arr) print("Counter(arr) =",cnt) #Counter(arr) = Counter({4: 3, 5: 3, 1: 2, 2: 2, 3: 2, 6: 1}) cnt = Counter(arr).most_common() print("Counter(arr).most_common() =",cnt) #Counter(arr).most_common() = [(4, 3), (5, 3), (1, 2), (2, 2), (3, 2), (6, 1)] #Counter(리스트).most_common()은 리스.. 2021. 6. 2.
코딩테스트 준비 - 백준2108번 풀이/파이썬 반올림, 원소 개수 구하기(파이썬) 백준 2108번 풀이 문제풀러가기 https://www.acmicpc.net/problem/2108 문제 풀이 1. 산술평균: round()함수 활용 더보기 round() 반올림 함수 ex1) round(3.6) = 4 ex2) round(3,2) = 3 ex3) round(3.425, 1) = 3.4 ex4) round(4.1729, 3) = 4.173 2. 중앙값: // = cnt: cnt = a for i in range(N): a = arr.count(arr[i]) if a == cnt: arr_min.append(arr[i]) arr_min = list(set(arr_min)) #리스트 중복 제거 arr_min.sort() if len(arr_min) == 1: #리스트에 숫자가 하나밖에 없다면.. 2021. 6. 1.