본문 바로가기

분류 전체보기

(239)
[프로그래머스] 나누어 떨어지는 숫자 배열 https://school.programmers.co.kr/learn/courses/30/lessons/12910 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 리스트에 있는 원소를 하나하나씩 diviosor로 나누어떨어지는지 확인하고, 나누어 떨어진다면 비어있는 리스트인 result에 하나씩 추가하였다. 만약 연산 이후에도 result에 하나의 원소도 없다면, 문제의 요구대로 -1만 삽입해주도록 예외처리를 해주었다. def solution(arr, divisor): result = [] for i in range (len(arr)): ..
[프로그래머스] 없는 숫자 더하기 https://school.programmers.co.kr/learn/courses/30/lessons/86051 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 0부터 9까지의 합은 45이므로 45에서 주어진 리스트의 합을 빼면 그냥 그게 답이다. 한줄 풀이. def solution(numbers): return(45 - sum(numbers))
[Python] zip함수(두 개의 리스트를 묶어주기) zip은 두 개의 리스트를 서로 묶어줄 때 사용한다. 다음의 예시를 살펴보자. name = ['gum', 'snack']price = [500, 1000]z = zip(name, price)print(list(z)) [('merona', 500), ('gugucon', 1000)] output 값을 보면 알겠지만, name과 price의 0번 원소는 0번 원소끼리, 1번 원소는 1번 원소끼리 묶어주고 zip 타입의 객체를 우리가 알고 있는 리스트 타입으로 반환하는 모습을 살펴볼 수 있다. 그렇다면 어떤 상황에 사용하는 것이 좋을까? 다음과 같이 for문과 함께 활용해서 사용할 수 있다.name = ['gum', 'snack']price = [500, 1000]for n, p in zip(name, pri..
[프로그래머스] 음양 더하기(zip함수) https://school.programmers.co.kr/learn/courses/30/lessons/76501 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 단순 반복문과 조건문으로 구현했다. 조건문은 삼항연산자로 작성하여 최대한 코드의 간결성을 유지했다. def solution(absolutes, signs): sum = 0 for i in range(len(absolutes)): sum = sum + absolutes[i] if signs[i] == True else sum - absolutes[i] retu..
[프로그래머스] 콜라츠 추측 https://school.programmers.co.kr/learn/courses/30/lessons/12943 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 짝수인 경우와 홀수인 경우를 나눠서 생각을 해주었고, 500회 이상의 연산과 같은 예외처리를 따로 해줬다.의식의 흐름대로 코드를 짰더니 뭔가 장황해보인다. 그래서 좀 더 축약할 수 있는 방법을 생각해보았다.def solution(n): cnt = 0 while n != 1: if n % 2 == 0: n /= 2 cnt += 1 ..
[Python] format 함수(인자 전달) format의 역할은 간단히 나타내면 직관적으로 바로 이해가 가능하다.format에 전달하는 인자의 인덱스를 문자열 표현에 포함시키는 것이다.  지금부터는 자세한 예시를 살펴보자. 10진수, 8진수, 16진수 출력[In]num = 256print("===num===")print("10진수:",format(num,'d'))print("8진수:",format(num,'o'))print("16진수:",format(num,'x')) [Out]===num===10진수: 2568진수: 40016진수: 100  인자 전달[In]a=5b=3print("a:{0} b:{1}".format(a,b))print("{0}+{1}={1}+{0}={2}".format(a,b,a+b)) [Out]===num===a:5 b:35+3..
[프로그래머스] 서울에서 김서방 찾기(format, index, return문에서 문자열과 정수를 함께 쓰는법) https://school.programmers.co.kr/learn/courses/30/lessons/12919/solution_groups?language=python3&type=my 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 리스트 안에 김씨의 위치를 찾는 문제다. 다만, return문을 작성할 때 문자열과 정수를 함께 쓰니 오류가 났었다. 정수를 문자열로 바꿔 통일시켜주니 해결됐다. def solution(seoul): for i in range(len(seoul)): if seoul[i] == "Kim": l..
[프로그래머스] 나머지가 1이 되는 수 찾기 https://school.programmers.co.kr/learn/courses/30/lessons/87389 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr while문을 사용해서 나머지가 1이 아닌 경우에만 반복문을 실행시키도록 했다.나머지가 1인 수가 나오는 순간 종료.def solution(n): i = 1 while n % i != 1: i += 1 return i  대부분의 사람들은 아래와 같이 푼 것 같다. 나의 논리와 같은데,  while문으로 작성하는 것이 좀 더 간결하다.def solution(n): an..