Python 46

[프로그래머스] N개의 최소공배수 - Lv.2

프로그래머스 12953번 문제인 "N개의 최소공배수" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] N개의 최소공배수 Lv.2 - [파이썬/python] 💻 문제 설명 두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배수는 n 개의 수들의 배수 중 공통이 되는 가장 작은 숫자가 됩니다. n개의 숫자를 담은 배열 arr이 입력되었을 때 이 수들의 최소공배수를 반환(return)하는 함수, solution을 완성해 주세요. 더보기 https://school.programmers.co.kr/learn/courses/30/lesso..

코딩테스트 2023.11.10

[프로그래머스] 전화번호 목록 - Lv.2

프로그래머스 42577번 문제인 "전화번호 목록" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 전화번호 목록 Lv.2 - [파이썬/python] 💻 문제 설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 반환(return) 하도록 solution 함수를 작성해주세요. 더보기 https..

코딩테스트 2023.11.09

[프로그래머스] k진수에서 소수 개수 구하기 - Lv.2

프로그래머스 92335번 문제인 "k진수에서 소수 개수 구하기" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] k진수에서 소수 개수 구하기 Lv.2 - [파이썬/python] 💻 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소수 오른쪽에만 0이 있고 왼쪽에는 아무것도 없는 경우 0P처럼 소수 왼쪽에만 0이 있고 오른쪽에는 아무것도 없는 경우 P처럼 소수 양쪽에 아무것도 없는 경우 단, P는 각 자릿수에 0을 포함하지 않는 소수입니다. 예를 들어, 101은 P가 될 수 없습니다. 예를 들어, 437674을 3진수로 바꾸면 2..

코딩테스트 2023.11.08

[프로그래머스] 광물 캐기 - Lv.2

프로그래머스 172927번 문제인 "광물 캐기" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 광물 캐기 Lv.2 - [파이썬/python] 💻 문제 설명 마인은 곡괭이로 광산에서 광석을 캐려고 합니다. 마인은 다이아몬드 곡괭이, 철 곡괭이, 돌 곡괭이를 각각 0개에서 5개까지 가지고 있으며, 곡괭이로 광물을 캘 때는 피로도가 소모됩니다. 각 곡괭이로 광물을 캘 때의 피로도는 아래 표와 같습니다. 예를 들어, 철 곡괭이는 다이아몬드를 캘 때 피로도 5가 소모되며, 철과 돌을 캘때는 피로도가 1씩 소모됩니다. 각 곡괭이는 종류에 상관없이 광물 5개를 캔 후에는 더 이상 사용할 수 없습니다. 마인은 다음과 같은 규칙을 지키면서 최소한의 피로도로 광물을 캐려고 합니다. 사용할 수 있는 곡괭이중 ..

코딩테스트 2023.11.03

[프로그래머스] 과제 진행하기 - Lv.2

프로그래머스 176962번 문제인 "과제 진행하기" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 과제 진행하기 Lv.2 - [파이썬/python] 💻 문제 설명 과제를 받은 루는 다음과 같은 순서대로 과제를 하려고 계획을 세웠습니다. 과제는 시작하기로 한 시각이 되면 시작합니다. 새로운 과제를 시작할 시각이 되었을 때, 기존에 진행 중이던 과제가 있다면 진행 중이던 과제를 멈추고 새로운 과제를 시작합니다. 진행중이던 과제를 끝냈을 때, 잠시 멈춘 과제가 있다면, 멈춰둔 과제를 이어서 진행합니다. 만약, 과제를 끝낸 시각에 새로 시작해야 되는 과제와 잠시 멈춰둔 과제가 모두 있다면, 새로 시작해야 하는 과제부터 진행합니다. 멈춰둔 과제가 여러 개일 경우, 가장 최근에 멈춘 과제부터 시작합니..

코딩테스트 2023.11.02

[프로그래머스] 구명보트 - Lv.2

프로그래머스 42885번 문제인 "구명보트" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 구명보트 Lv.2 - [파이썬/python] 💻 문제 설명 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 구명보트의 무게 제한을 초과하여 같이 탈 수 없습니다. 구명보트를 최대한 적게 사용하여 모든 사람을 구출하려고 합니다. 사람들의 몸무게를 담은 배열 people과 구명보트의 무게 ..

코딩테스트 2023.11.01

[Python] 파이썬 집합 | set()

파이썬의 집합(set)은 중복을 허용하지 않고 고유한 원소들로 이루어진 컬렉션입니다. 집합은 중괄호 {}를 사용하여 정의하며, 리스트나 튜플과는 달리 순서가 없습니다. 집합은 원소들 간의 관계를 파악하고 고유한 값들을 저장할 때 유용하며, 집합 연산을 지원하여 데이터 처리를 간편하게 만듭니다. ㅡㅡㅡㅡㅡㅡㅡ목차ㅡㅡㅡㅡㅡㅡㅡ 1. 집합 | set() 개념 및 사용 방법 2. 집합 | set() 메서드 add() - 하나의 원소를 집합에 추가 remove() - 집합에서 원소 제거 union() - 두 집합의 합집합 반환 intersection() - 두 집합의 교집합 반환 difference() - 두 집합의 차집합 반환 update() - 여러 원소를 집합에 추가 clear() - 모든 원소를 집합에서 ..

Python 2023.10.31

[프로그래머스] 괄호 회전하기 - Lv.2

프로그래머스 76502번 문제인 "괄호 회전하기" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 괄호 회전하기 Lv.2 - [파이썬/python] 💻 문제 설명 다음 규칙을 지키는 문자열을 올바른 괄호 문자열이라고 정의합니다. (), [], {} 는 모두 올바른 괄호 문자열입니다. 만약 A가 올바른 괄호 문자열이라면, (A), [A], {A} 도 올바른 괄호 문자열입니다. 예를 들어, [] 가 올바른 괄호 문자열이므로, ([]) 도 올바른 괄호 문자열입니다. 만약 A, B가 올바른 괄호 문자열이라면, AB 도 올바른 괄호 문자열입니다. 예를 들어, {} 와 ([]) 가 올바른 괄호 문자열이므로, {}([]) 도 올바른 괄호 문자열입니다. 대괄호, 중괄호, 그리고 소괄호로 이루어진 문자열 s..

코딩테스트 2023.10.30

[프로그래머스] 영어 끝말잇기 - Lv.2

프로그래머스 12981번 문제인 "영어 끝말잇기" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 영어 끝말잇기 Lv.2 - [파이썬/python] 💻 문제 설명 부터 n까지 번호가 붙어있는 n명의 사람이 영어 끝말잇기를 하고 있습니다. 영어 끝말잇기는 다음과 같은 규칙으로 진행됩니다. 1번부터 번호 순서대로 한 사람씩 차례대로 단어를 말합니다. 마지막 사람이 단어를 말한 다음에는 다시 1번부터 시작합니다. 앞사람이 말한 단어의 마지막 문자로 시작하는 단어를 말해야 합니다. 이전에 등장했던 단어는 사용할 수 없습니다. 한 글자인 단어는 인정되지 않습니다. 다음은 3명이 끝말잇기를 하는 상황을 나타냅니다. tank → kick → know → wheel → land → dream → mothe..

코딩테스트 2023.10.29

[프로그래머스] 피보나치 수 - Lv.2

프로그래머스 12945번 문제인 "피보나치 수" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 피보나치 수 Lv.2 - [파이썬/python] 💻 문제 설명 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 예를들어 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) = 2 + 3 = 5 와 같이 이어집니다. 2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 반환(return)하는 함수, solution을 완성해 주..

코딩테스트 2023.10.28

[프로그래머스] 짝지어 제거하기 - Lv.2

프로그래머스 12973번 문제인 "짝지어 제거하기" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 짝지어 제거하기 Lv.2 - [파이썬/python] 💻 문제 설명 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S가 주어졌을 때, 짝지어 제거하기를 성공적으로 수행할 수 있는지 반환하는 함수를 완성해 주세요. 성공적으로 수행할 수 있으면 1을, 아닐 경우 0을 리턴해주면 됩니다. 예를 들어, 문자열 S = baabaa 라면 b aa baa → bb aa → aa..

코딩테스트 2023.10.27

[프로그래머스] 이진 변환 반복하기 - Lv.2

프로그래머스 70129번 문제인 "이진 변환 반복하기" Lv.2을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 이진 변환 반복하기 Lv.2 - [파이썬/python] 💻 문제 설명 0과 1로 이루어진 어떤 문자열 s에 대한 이진 변환을 다음과 같이 정의합니다. s의 모든 0을 제거합니다. s의 길이를 c라고 하면, s를 "c를 2진법으로 표현한 문자열"로 바꿉니다. 예를 들어, s = "0111010"이라면, s에 이진 변환을 가하면 s = "0111010" -> "1111" -> "100" 이 됩니다. 0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 ..

코딩테스트 2023.10.26

[프로그래머스] 주사위 게임 3 - Lv.0

프로그래머스 181916번 문제인 "주사위 게임 3" Lv.0을 파이썬으로 풀어보도록 하겠습니다. [프로그래머스] 주사위 게임 3 Lv.0 - [파이썬/python] 💻 문제 설명 1부터 6까지 숫자가 적힌 주사위가 네 개 있습니다. 네 주사위를 굴렸을 때 나온 숫자에 따라 다음과 같은 점수를 얻습니다. 네 주사위에서 나온 숫자가 모두 p로 같다면 1111 × p점을 얻습니다. 세 주사위에서 나온 숫자가 p로 같고 나머지 다른 주사위에서 나온 숫자가 q(p ≠ q)라면 (10 × p + q)2 점을 얻습니다. 주사위가 두 개씩 같은 값이 나오고, 나온 숫자를 각각 p, q(p ≠ q)라고 한다면 (p + q) × |p - q|점을 얻습니다. 어느 두 주사위에서 나온 숫자가 p로 같고 나머지 두 주사위에서..

코딩테스트 2023.10.25

[Python] 파이썬 공백 지우기 : strip() | replace() 함수

파이썬은 문자열 처리에 강력한 기능을 제공합니다. 이 글에서는 파이썬의 strip(), lstrip(), rstrip(), 그리고 replace() 함수를 중점적으로 다루며, 이들 함수를 사용하여 문자열의 앞뒤나 중간에 있는 공백을 제거하는 방법을 알아보겠습니다. ㅡㅡㅡㅡㅡㅡㅡ목차ㅡㅡㅡㅡㅡㅡㅡ 1. 양쪽 공백 지우기 strip() 함수 - 양쪽 공백 지우기 lstrip() 함수 - 왼쪽 공백 지우기 rstrip() 함수 - 오른쪽 공백 지우기 2. 공백 완전 제거하기 replace() 함수 1. 양쪽 공백 지우기 1.1. strip() 함수 - 양쪽 공백 지우기 - strip() 함수는 문자열의 양쪽 끝에 있는 공백을 제거합니다. # ㅡㅡㅡ strip() 함수 ㅡㅡㅡ string.strip() # 예시 ..

Python 2023.10.24
728x90
반응형