728x90

파이썬 146

[Python] 소수구하기 - 에라토스테네스의 체

소수 : 1과 그 수 자신 이외의 자연수로는 나눌 수 없는 자연수를 의미 📝 1부터 100사이의 소수구하기 코드구현 📝 에라토스테네스의 체 범위에서 합성수를 지우는 방식으로 소수를 찾는 방법 1. 1은 제거 2. 지워지지 않은 수 중 제일 작은 2를 소수로 채택하고, 나머지 2의 배수를 모두 지운다. 3. 지워지지않은 수 중 제일 작은 3을 소수로 채택하고, 나머지 3의 배소룰 모두 지운다. 4. 지워지지 않은 수 중 제일 작은 5를 소수로 채택하고, 나머지 5의 배수를 모두 지운다. n = 100 a = [False, False] + [True]*(n-1) primes=[] for i in range(2, n+1): if a[i]: primes.append(i) for j in range(i*2, n+..

[프로그래머스] Lv1.Summer/Winter / 예산 - 파이썬(Python)

https://school.programmers.co.kr/learn/courses/30/lessons/12982 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📝 문제설명 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 없습니다. 그래서 최대한 많은 부서의 물품을 구매해 줄 수 있도록 하려고 합니다. 물품을 구매해 줄 때는 각 부서가 신청한 금액만큼을 모두 지원해 줘야 합니다. 예를 들어 1,000원을 신청한 부서에는..

[백준 15596 / 파이썬(Python) / Bronze Ⅱ] 구현 / 정수 N개의 합

문제링크 : https://www.acmicpc.net/problem/15596 15596번: 정수 N개의 합 C++17, Java 8, Python 3, C11, PyPy3, C99, C++98, C++11, C++14, Go, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang) www.acmicpc.net ■ 문제 정수 n개가 주어졌을 때, n개의 합을 구하는 함수를 작성하시오. 작성해야 하는 함수는 다음과 같다. Python 2, Python 3, PyPy, PyPy3: def solve(a: list) -> int a: 합을 구해야 하는 정수 n개가 저장되어 있는 리스트 (0 ≤ a[i] ≤ 1,0..

[백준 1193 / 파이썬(Python) / Silver Ⅴ] 구현 / 분수찾기

문제링크 : https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net ■ 문제 이와 같이 나열된 분수들을 1/1 → 1/2 → 2/1 → 3/1 → 2/2 → … 과 같은 지그재그 순서로 차례대로 1번, 2번, 3번, 4번, 5번, … 분수라고 하자. X가 주어졌을 때, X번째 분수를 구하는 프로그램을 작성하시오. ■ 입력 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. ■ 출력 첫째 줄에 분수를 출력한다. ■ 풀이 대각선 줄이 홀수인지 짝수인지 판단하여 구하고, 분자, 분모의 숫자의 방향이 홀수 줄인경우는 분자는 오름차순, 분모는 내림차순, 짝수인경우 분모는 내림차순,..

[Pandas] str_cantains() 문자열을 포함하는지 여부확인

📌 str.contains() 판다스 문자열 메서드란? 문자열을 포함하는지 여부를 확인하는 문자열 메서드입니다. 이 메서드는 주어진 문자열 시리즈 또는 데이터프레임 열에 대해 각 요소를 검사하여 지정된 문자열이 포함되어 있는지 여부를 확인합니다. 기본 형태 : series.str.contains(pat, case=True, regex=True, na=None, flags=0) 사용법 pat : 포함 여부를 확인할 문자열 또는 패턴 case : 대소문자 구분 여부 regex : 정규식을 사용하여 패턴 매칭 여부를 설정하며, 문자열을 정규식으로 해석합니다. na : 결측값(NaN)을 처리하는 방법을 설정. 기본값은 None이며, 결측값을 처리하지 않습니다. flags : 정규식 플래그를 설정합니다. : 'a..

[Python] import collections 모듈이란?

📌 collections 모듈이란? 파이썬 내장 모듈 중 하나로, 다양한 컨테이너 데이터 타입을 제공하는 모듈이다. 이 모듈은 기본적으로 'list', 'tuple', 'set', 'dict' 등과 같은 데이터 구조를 보다 효율적으로 다룰 수 있다. ○ Counter : 요소의 개수를 셀 수 있는 컨테이너 객체를 생성 ○ dafaultdict : 딕셔너리의 기본값을 설정할 수 있는 딕셔너리 객체를 생성 ○ deque : 양쪽 끝에서 빠른 삽입과 삭제를 지원하는 큐(Deque) 객체를 생성 ○ namedtuple : 필드 이름으로 접근할 수 있는 튜플 객체를 생성 ○ OrderedDict : 삽입 순서를 기억하는 딕셔너리 객체를 생성 참고 : https://docs.python.org/ko/3/librar..

[프로그래머스] Lv1. 해시 / 완주하지 못한 선수 - 파이썬(Python)

문제링크 : https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📝 문제설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 🔗 제한 사항 - 마라톤 경기에 참여한..

[백준 2908 / 파이썬(Python) / Bronze Ⅱ] 구현 / 상수

문제링크 : https://www.acmicpc.net/problem/2908 2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net ■ 문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는..

[백준 10817 / 파이썬(Python) / Bronze Ⅲ] 구현 / 세 수

문제링크 : https://www.acmicpc.net/problem/10817 10817번: 세 수 첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100) www.acmicpc.net ■ 문제 세 정수 A, B, C가 주어진다. 이때, 두 번째로 큰 정수를 출력하는 프로그램을 작성하시오. ■ 입력 첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100) ■ 출력 두 번째로 큰 정수를 출력한다. ■ 풀이 세 수를 입력받아 list로 변환하여 lst에 저장한다. 리스트를 정렬한다. 기준이 오름차순이라서, reverse=True 옵션을 통해 내림차순해준다. 그 후 2번째 요소를 출력해준다. 세 수라서 그냥 sorted 기..

[백준 10870 / 파이썬(Python) / Bronze Ⅱ] 구현 / 피보나치 수 5

문제링크 : https://www.acmicpc.net/problem/10870 ■ 문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. ■ 입력 첫째 줄에 n이 주어진다. n은 20보다 작거나 같은 자연수 또는 0이다. ■ 출력 첫째 줄에 n번째 피보나치 수를 출력한다. ■..

728x90
반응형