728x90

Python/Coding Test 59

[Coding Test] 1000번 : A+B

백준 코딩테스트 1000번 : A+B문제 설명두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오문제 풀이입력값을 list형태로 매핑하고 정수로 정의하여 sys 함수로 받아옴입력받은 값을 sum 함수를 이용하여 더함정답 코드import sysinput=list(map(int, sys.stdin.readline().split()))print(sum(input))* 이 문제는 백준 코딩테스트 1000번 문제입니다.

Python/Coding Test 2024.11.27

[Coding Test] 백준 : 시간복잡도 문제 해결

백준 파이썬 시간복잡도 문제 해결 코드백준은 코드 실행에 있어 시간복잡도 문제에 매우 예민하다.기본적인 반복문 for과 조건문 if를 막무가내로 사용하면 문제가 해결되지 않는다.이에 시간복잡도를 줄여줄 수 있는 함수를 실행하여 문제를 해결해준다. import sysa = sys.stdin.readline.().split()변수명(a) 설정은 자유롭게 설정split 함수는 필요에 따라 사용

Python/Coding Test 2024.11.27

[Coding Test] N개의 최소공배수

프로그래머스 코딩테스트 2단계 : N개의 최소공배수 문제 설명 두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배수는 n 개의 수들의 배수 중 공통이 되는 가장 작은 숫자가 됩니다. n개의 숫자를 담은 배열 arr이 입력되었을 때 이 수들의 최소공배수를 반환하는 함수, solution을 완성해 주세요. 문제 풀이 math 라이브러리의 gcd 함수를 이용해 최대공약수를 구해줌 최대공약수를 이용해 최소공배수 구하는 알고리즘 만듦 반복문을 이용해 arr 배열의 마지막 값 2개를 지우면서 lcm을 구한 후 나온 값을 다시 추가 arr 배열의 길이..

Python/Coding Test 2024.03.09

[Coding Test] 서울에서 김서방 찾기

프로그래머스 코딩테스트 1단계 : 서울에서 김서방 찾기 문제 설명 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 문제 풀기 seoul 배열에서 "Kim"을 index로 지정 조건에 맞게 str로 출력 정답 코드 def solution(seoul): x = seoul.index("Kim") return "김서방은 "+str(x)+"에 있다"* 이 문제는 프로그래머스 코딩테스트 연습 1단계 문제입니다.

Python/Coding Test 2024.03.05

[Coding Test] 짝지어 제거하기

프로그래머스 코딩테스트 2단계 : 짝지어 제거하기 문제 설명 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S가 주어졌을 때, 짝지어 제거하기를 성공적으로 수행할 수 있는지 반환하는 함수를 완성해 주세요. 성공적으로 수행할 수 있으면 1을, 아닐 경우 0을 리턴해주면 됩니다. 예를 들어, 문자열 S = baabaa 라면 b aa baa → bb aa → aa → 의 순서로 문자열을 모두 제거할 수 있으므로 1을 반환합니다. 문제 풀이에 들어가기 전 [자료구조] Stack, ..

Python/Coding Test 2024.03.03

[Coding Test] 행렬의 덧셈

프로그래머스 코딩테스트 1단계 : 행렬의 덧셈 문제 설명 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 문제 풀이 이중 for문을 이용해 각각의 자리의 수를 더함 arr1에 arr2를 더하여 arr1을 출력 정답 코드 def solution(arr1, arr2): for i in range(len(arr1)): for j in range(len(arr1[0])): arr1[i][j] += arr2[i][j] return arr1다른 사람 코드 def sumMatrix(A,B): answer = [[c + d for c, d in zip(a..

Python/Coding Test 2024.02.28

[Coding Test] 자릿수 더하기

프로그래머스 코딩테스트 1단계 : 자릿수 더하기 문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 문제 풀이 문자열 n을 반복문을 통해 하나씩 반복하고 int를 통해 정수로 변경 변경한 정수를 sum으로 합하여 최종적으로 출력 정답 코드 def solution(n): answer = [int(i) for i in str(n)] return sum(answer)* 이 문제는 프로그래머스 코딩테스트 연습 1단계 문제입니다.

Python/Coding Test 2024.02.26

[Coding Test] 콜라츠 추측

프로그래머스 코딩테스트 1단계 : 콜라츠 추측 문제 설명 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 예를 들어, 주어진 수가 6이라면 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야 하는지 반환하는 함수, solution을 완성해 주세요. 단, 주어진 수가 1인 경우에는 0을, 작업을 500번 반복할 때까지 1이 되지 않는다..

Python/Coding Test 2024.02.21

[Coding Test] 구명보트

프로그래머스 코딩테스트 2단계 : 구명보트 문제 설명 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 구명보트의 무게 제한을 초과하여 같이 탈 수 없습니다. 구명보트를 최대한 적게 사용하여 모든 사람을 구출하려고 합니다. 사람들의 몸무게를 담은 배열 people과 구명보트의 무게 제한 limit가 매개변수로 주어질 때, 모든 사람을 구출하기 위해 필요한 구명보트 개수의 최솟값을 return..

Python/Coding Test 2023.12.27
반응형