본문 바로가기

코딩테스트 준비6

코딩테스트 준비 - 프로그래머스 위장 풀이/파이썬 딕셔너리를 이용한 문제 풀이 (파이썬) 프로그래머스 위장 풀이 문제 풀러 가기 https://programmers.co.kr/learn/courses/30/lessons/42578?language=python3 코딩테스트 연습 - 위장 programmers.co.kr 문제 분석 1. 경우의 수를 이용한 풀이 코드 def solution(clothes): dic={} cnt=1 for i in clothes: key = i[1] value = i[0] if key not in dic: dic[key]=[value] else: dic[key].append(value) for i in dic.keys(): cnt=cnt*(len(dic[i])+1) return cnt-1 코드 풀이 def solution(clothes): dic={} cnt=1 f.. 2021. 7. 5.
코딩테스트 준비 - 프로그래머스: 튜플/2019 카카오 개발자 겨울 인턴십 풀이 (파이썬) 프로그래머스: 튜플 풀이 문제풀러가기 https://programmers.co.kr/learn/courses/30/lessons/64065?language=python3 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 문제 분석 1. 저 문자열안에 있는 숫자들만 꺼내, 리스트로 만들면 쉽게 해결할 수 있다. 2. 문자열 길이가 작은 순서대로 정렬한 후, 앞 부터 차례대로 숫자를 리스트에 중복되지 않게 넣어주면 된다. 코드1: * 효율성이 낮지만, 일반적으로 .. 2021. 7. 2.
코딩테스트 준비 - 프로그래머스:메뉴 리뉴얼 풀이/Counter,combinations (파이썬) 프로그래머스: 메뉴 리뉴얼 풀이 Counter에 관한 포스팅 2021.06.02 - [(Python)파이썬/(Python)파이썬 문법] - 파이썬 - 리스트 원소 개수 구하기/collections모듈의 Counter클래스 활용 예제 파이썬 - 리스트 원소 개수 구하기/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,.. eunhee-programming.tistory.. 2021. 7. 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.
코딩테스트 준비 - 백준10989번 정렬3 풀이 (파이썬) 백준 10989번 풀이 문제풀러가기 https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 풀이 1. 시간과 메모리 제한 유의 2.주어진 문제에서 제한한 메모리가 매우 낮다.그러므로 pypy3보다 python3로 사용할 것. (pypy3보다 python3가 시간상 더 빠르게 동작, 하지만 메모리 사용량이 python3 보다 많음 ) 3. N의 범위가 정해져 있다. 1~10000까지 코드 - 시간 초과 코드:실패 import sys N = int(sys.stdin.rea.. 2021. 5. 31.
코딩테스트 준비 - 백준 11653번 소인수분해 풀이(파이썬) 백준 11653번 풀이 문제풀러가기 https://www.acmicpc.net/problem/11653 11653번: 소인수분해 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. www.acmicpc.net 코드 N = int(input()) m = 2 while N!=1: # N과m을 나눴을때 몫이 1이 되면 멈춤. if N%m==0: print(m) N = N//m else: m += 1 2021. 5. 25.