[개발]programmers/Python3 76

Lv.1_최소직사각형

https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(sizes): for i in range(len(sizes)): w = sizes[i][0] h = sizes[i][1] if h >= w: sizes[i][0] = h sizes[i][1] = w return max(r[0] for r in sizes) * max(r[1] for r in sizes) 우선 리스트에서 가로, 세로 중 세로의 길이가 더 긴 것의 순서를 바꾼 ..

Lv.1_삼총사

https://school.programmers.co.kr/learn/courses/30/lessons/131705 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(number): answer = 0 for i in range(len(number)): for j in range(i+1, len(number)): for z in range(j+1, len(number)): if (number[i] + number[j] + number[z]) == 0: answer += 1 return answer combination함수도 있는데 그건..

Lv.1_예산

https://school.programmers.co.kr/learn/courses/30/lessons/12982 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(d, budget): answer = 0 d.sort() for depart in d: if budget >= depart: budget -= depart answer += 1 return answer 변수 추가하지 말고 있는 변수 (budget)에서 빼기!

Lv.1_3진법 뒤집기

https://school.programmers.co.kr/learn/courses/30/lessons/68935 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(n): answer = '' result = 0 while n > 0: rest = n % 3 n = n // 3 answer += str(rest) result = int(answer, 3) return result 진법 계산하는 법을 몰라 헤맸다 int(answer, 3)은 3진법을 10진법으로 바꾸는 함수 식이다 또한 이미 answer에는 3진법 뒤부터 입력이 되므로 ..

Lv.1_이상한 문자 만들기

https://school.programmers.co.kr/learn/courses/30/lessons/12930 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(s): s = s.split(' ') result = [] for i in range(len(s)): answer = '' for j in range(len(s[i])): if j % 2 == 0: answer += s[i][j].upper() else: answer += s[i][j].lower() result.append(answer) return ' '.join(res..

Lv.1_행렬의 덧셈

https://school.programmers.co.kr/learn/courses/30/lessons/12950 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(arr1, arr2): for i in range(len(arr1)): for j in range(len(arr1[i])): arr1[i][j] += arr2[i][j] return arr1 새로운 행렬을 만들어 각 요소들의 합을 구하는 것보다 원래 있는 행렬에 더하기만 하면 코드도 더 간단하고 리스트 형태도 건드리지 않는다! 새로운 변수를 만드는 것 보다 원래 있는 변수들..

Lv.1_약수의 개수와 덧셈

https://school.programmers.co.kr/learn/courses/30/lessons/77884 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(left, right): answer = 0 for number in range(left, right+1, 1): count = 0 for n in range(1, number + 1): if number % n == 0: count += 1 if count % 2 == 0: answer += number else: answer -= number return answer f..

Lv.1_같은 숫자는 싫어

https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(arr): answer = [] for i in range(len(arr)): if i == 0: answer.append(arr[i]) elif arr[i] != arr[i-1]: answer.append(arr[i]) return answer 처음에는 같은 숫자가 존재하면 리스트에서 삭제하는 법을 생각했다 하지만 이 방법의 경우 len(arr)의 값 때문에 리스트의 범위..

Lv.1_최대공약수와 최소공배수

https://school.programmers.co.kr/learn/courses/30/lessons/12940 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(n, m): answer = [] for i in range(min(n,m), 0, -1): if n % i == 0 and m % i == 0: answer.append(i) break for i in range(max(n,m), (n*m)+1, 1): if i % n == 0 and i % m == 0: answer.append(i) break return answer ..

Lv.1_직사각형 별찍기

https://school.programmers.co.kr/learn/courses/30/lessons/12969 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr a, b = map(int, input().strip().split(' ')) answer = ('*' * a + '\n') * b print(answer) 간단해보이는 문제가 가장 어렵다