본문 바로가기
728x90
반응형

Python437

[백준] 2587번 : 대표값2 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 2587번: 대표값2 어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30의 평균은 (10 + 40 + 30 + 60 + www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 5개의 자연수를 저장할 리스트를 생성한다. li = list() 5번을 반복하며 for _ in range(5) 자연수를 입력받아 리스트에 추가한다. li.append(int(sys.stdin.readline())) 리스트의 수를 오름차순으로 정렬한다. li.sort() 평균을 출력한다. pr.. 2023. 11. 12.
[프로그래머스] 무인도 여행 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 해당 문제는 무인도를 각각 찾아내어 머무를 수 있는 날을 계산한 뒤, 모든 무인도의 머무를 수 있는 날을 오름차순으로 정렬하는 문제이다. 각 연결되어 있는 무인도를 찾기 위해 bfs 알고리즘을 활용한다. 각 무인도의 시작 위치를 찾아내어 연결된 무인도를 탐색하고 해당 무인도의 머무를 수 있는 날을 계산한다. 지도의 모든 위치를 탐색하며 무인도를 모두 찾아내고 각 무인도마다 머무를 수 있는 날을 저장했다면 이를 오름차순으로 정렬한다. bfs 함수에서 deque 자료구조를 사용하기 .. 2023. 11. 11.
[백준] 19532번 : 수학은 비대면강의입니다 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 19532번: 수학은 비대면강의입니다 정수 $a$, $b$, $c$, $d$, $e$, $f$가 공백으로 구분되어 차례대로 주어진다. ($-999 \leq a,b,c,d,e,f \leq 999$) 문제에서 언급한 방정식을 만족하는 $\left(x,y\right)$가 유일하게 존재하고, 이 때 $x$와 $y$가 각각 $- www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys a, b, c, d, e, f의 각 값을 입력받는다. a, b, c, d, e, f = map(int, sys.stdin.readline().split()) by = c - ax → y = (c - ax) / b 해당 y 값을 .. 2023. 11. 10.
[백준] 24313번 : 알고리즘 수업 - 점근적 표기 1 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 24313번: 알고리즘 수업 - 점근적 표기 1 f(n) = 7n + 7, g(n) = n, c = 8, n0 = 1이다. f(1) = 14, c × g(1) = 8이므로 O(n) 정의를 만족하지 못한다. www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys a1과 a0를 입력받는다. a1, a0 = map(int, sys.stdin.readline().split()) 양의 정수 c를 입력받는다. c = int(sys.stdin.readline()) 양의 정수 n0를 입력받는다. n0 = int(sys.stdin.readline()) O(n) 정의를 만족하려면 우선 f(n0) = n0에 대해 f(n) 2023. 11. 9.
[백준] 24267번 : 알고리즘 수업 - 알고리즘의 수행 시간 6 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 24267번: 알고리즘 수업 - 알고리즘의 수행 시간 6 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 입력의 크기를 입력받는다. n = int(sys.stdin.readline()) 전체 수행 횟수는 1부터 n - 2까지 각 1부터 해당 값까지의 합의 결과를 모두 더한 결과이다. 위의 식 중 괄호 안의 식을 풀어서 쓰면 ∑(k(k + 1) / 2)이고 전체 식을 풀어서 정리하면 n(n - 1.. 2023. 11. 8.
[프로그래머스] 메뉴 리뉴얼 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 해당 문제는 단품 메뉴 2개 이상으로 구성된 가능한 코스요리를 구하는 문제이다. 코스요리를 구성하는 단품 메뉴의 개수에 따라 코스요리의 가능한 모든 조합의 결과를 구하고 해당 조합을 바탕으로 각 코스요리가 얼마나 주문되었는지 구한다. 손님 2명 이상이 주문한 메뉴 중 가장 많은 횟수로 주문된 코스요리 후보를 구한다. 각 코스요리의 개수에 따른 모든 코스요리 후보를 구했다면 해당 후보들을 오름차순으로 정렬한다. 조합의 결과를 combinations() 함수로 구하기 위해 해당 함수.. 2023. 11. 7.
[백준] 24266번 : 알고리즘 수업 - 알고리즘의 수행 시간 5 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 24266번: 알고리즘 수업 - 알고리즘의 수행 시간 5 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 입력의 크기를 입력받는다. n = int(sys.stdin.readline()) n번 수행되는 반복문이 3중으로 중첩되어 있으므로 총 수행 횟수는 n^3회이다. print(n ** 3) 수행 횟수를 다항식으로 나타내었을 때, 최고차항의 차수는 3이다. print(3) 3. 소스코드 impor.. 2023. 11. 6.
[백준] 24265번 : 알고리즘 수업 - 알고리즘의 수행 시간 4 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 24265번: 알고리즘 수업 - 알고리즘의 수행 시간 4 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 입력의 크기를 입력받는다. n = int(sys.stdin.readline()) 전체 수행 횟수는 1부터 n - 1까지 1씩 증가하며 총 n개의 항이 있는 등차수열의 합이다. 등차수열의 합은 (전체 항의 개수 * (첫째항 + 마지막항) / 2)의 공식으로 구할 수 있다. print( (n**.. 2023. 11. 5.
[파이썬으로 하는 데이터 분석] 11. Function Mapping & 그룹화 - 우당탕탕 개발자 되기 프로젝트 Function mapping은 특정 column의 값에 함수를 적용시키는 것을 말합니다. 우선 적용시킬 함수를 먼저 만들어주고 함수를 적용시킬 DataFrame의 column의 데이터를 지정해 apply() 함수로 만들어둔 함수를 적용하면 됩니다. apply() 함수 안에는 lambda 식을 활용해 해당 함수를 각 데이터에 적용시킬 수 있습니다. 그룹화는 DataFrame을 특정 column의 값으로 각 해당되는 값끼리 그룹을 만드는 것을 말합니다. DataFrame 이름.groupby('column 이름') 형식으로 작성해 주면 해당 DataFrame을 해당 column의 각 값으로 분류하게 됩니다. 그룹을 지어 각 그룹별 특성을 알아볼 때 유용하게 사용할 수 있습니다. 그룹화를 할 때 지정해 주는 .. 2023. 11. 4.
[프로그래머스] 불량 사용자 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 해당 문제는 불량 아이디를 정규식으로 바꾸는 것과 가능한 제재 아이디의 모든 경우를 찾는 것이 관건이다. 불량 아이디를 정규식으로 바꾸면 re.match() 함수를 사용해 쉽게 사용자 아이디가 불량 아이디인지 판별할 수 있다. 불량 아이디에서 * 문자가 특정 1개의 문자를 의미하므로 정규식의 . 문자로 바꾸어 줄 바꿈 문자를 제외한 모든 한 문자와 매치하는지 확인할 수 있다. 또한 사용자 아이디에서 불량 아이디의 개수를 뽑아 나열하는 모든 경우를 permuations() 함수로 .. 2023. 11. 4.
728x90
반응형