반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 경제뉴스
- 손경제 요약
- 급등주 분석
- 상한가 이유
- 자바
- 주식 상한가
- 테마주
- 코딩테스트
- 손경제
- boj
- Python
- 급등주
- 이진우의 손에 잡히는 경제
- Programmers
- 이진우
- 경제뉴스 요약
- 상한가 분석
- 파이썬
- java
- 손에 잡히는 경제 요약
- 경제
- 프로그래머스
- 주식 분석
- 손에 잡히는 경제
- 코테
- 알고리즘
- 백준
- 급등 이유
- 상한가
- 주식
Archives
- Today
- Total
Completion over Perfection
프로그래머스 - 최고의 집합 (파이썬3 Python3) 본문
반응형
https://school.programmers.co.kr/learn/courses/30/lessons/12938
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr

n과 s가 주어지는데 n개의 원소를 가진 집합의 각 원소의 합은 s가 되어야합니다.
n이 3이고 s가 8일 경우, 원소는 3개이고 이 3개의 원소를 모두 합친 값이 8이 되어야 합니다.
{1,1,6}
{1,2,5}
{1,3,4}
{2,3,3}
.
.
.
중요한 특징은 원소의 순서는 상관이 없다는 것.
따라서 위의 예시에서 {1,2,5} 와 {1,5,2}는 한개의 집합으로 취급한다는 겁니다.
이 조건을 만족하는 집합은 예시에서 보았듯이 여러개가 나오겠지만,
그 중에서 n개의 원소를 모두 곱했을 때 최대치가 나오는 집합이 최고의 집합이라고 합니다.
이 문제를 보자마자 느낀것은
최고의 집합은 s를 n으로 나눈 값이 무조건 포함이 되어야 한다는 것이었습니다.
그리고 이 s를 n으로 나눈값을 집합에 계속 추가해준다면 결국 그것이 최고의 집합이 된다는 뜻이겠죠.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
def solution (n, s):
if n>s:
return [-1]
answer = []
keyNum = s//n
answer.append(keyNum)
n -= 1
while n > 0:
s -= keyNum
keyNum = s//n
answer.append(keyNum)
n -= 1
# print("n : ", n, "s : ", s, "keyNum : ", keyNum)
return answer
|
cs |

반응형
'파이썬 (Python)' 카테고리의 다른 글
프로그래머스 - 안전지대 (파이썬3 Python3) (0) | 2023.08.21 |
---|---|
프로그래머스 - 무인도 여행 (파이썬3 Python3) (0) | 2023.08.20 |
프로그래머스 - 추억 점수 (파이썬3 Python3) (0) | 2023.08.15 |
프로그래머스 - 달리기 경주 (Python 3 파이썬 3) (0) | 2023.08.14 |
Introducing to Python Django Framework (0) | 2023.01.29 |