일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 파이브 스타즈 사전예약
- 토큰 만드는법
- 파이브 스타즈 후기
- 정보보호병 후기
- 데스나이트 키우기 쿠폰 정리글
- token provider 구현
- 양재천 사진
- logstash 설정
- 정보보호병 개발
- 멀티 파이프 라인
- jwt 토큰 생성
- 스프링 로그인 기능 만들기
- jwts 토큰
- 스프링 security
- 양재천 장마 피해
- 데스나이트 키우기
- 데스나이트 키우기 매크로
- 파이브 스타즈
- 해군
- Jwts 토큰 만들기
- 퇴직 라이프
- 코로나 19 견디기
- spring boot token provider
- 양재천 오리
- 데스나이트 키우기 매크로 소스파일
- 파이썬
- 정보보호병 프로그래밍
- logstash cubrid 설정
- 로그스태쉬
- 정보보호병
Archives
- Today
- Total
InTen
프로그래머스 월간 코드 챌린지 문제 1 번 코드 본문
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
프로그래머스 쪽 대회 관련 글들을 살펴보니 문제의 대한 해설 또는 글에 대한 제제가 없는것으로 확인되어서 글을 씁니다.
광고는 제거 하였고 비영리성을 띄게 게시글을 전환해 두었습니다.
문제가 있을시 비공개 처리하겠습니다.
1번 문제는
1차원 배열이 주어지는데
그 각 배열의 요소의 합을 구한 후에 그 합의 중복을 제거하고 배열을 오름차순으로 정렬 시켜주기만 하면 되는 간단한
문제였습니다.
테스트 케이스를 드리자면
numbers=[2,1,3,4,1] //배열이 주어 졌을 시
2+1, 2+3, 2+4, 2+1 : 3, 5, 6, 3
1+3, 1+4, 1+1 : 4, 6, 2
3+4, 3+1 : 7, 4
4+1 : 5
가지의 값들이 나오고
나온 값들에서 중복제거 후 정렬을 하게 된다면
result : [2, 3, 4, 5, 6, 7]
위의 결과값이 나오게 됩니다.
아래는 문제의 정답처리된 코드 입니다.
def solution(numbers):
answer=[]
for i in range(len(numbers)-1,0,-1):
for j in range(i,0,-1):
answer.append(numbers[i]+numbers[j-1])
answer_set = set(answer) // 중복 제거
answer = list(answer_set) // 배열로 다시 전환
answer.sort() // 정렬
return answer
지금 보니 무슨 생각으로 짠 코드인지는 모르겠지만 왜 후열순으로 계산한지 모르겠네여.
set은 중복을 제거하기 위해 사용했습니다.
더 좋은 코드로 변환 할 수도 있지만 그때 당시에는 문제를 빨리 풀기위해 사용했던 코드 였습니다.
2번 문제 보기
'프로그래밍 > 파이썬' 카테고리의 다른 글
데스나이트 키우기 매크로 소스 파일 (0) | 2020.09.20 |
---|---|
프로그래머스 월간 코드 챌린지 2번 문제 (0) | 2020.09.13 |
[Python 3.x] 파이썬 배열 입력 정리 (0) | 2020.08.29 |
[Python 3.x] 파이썬 다운로드 설치 & 환경 변수 세팅 (0) | 2020.08.28 |
[Python 3.x] 파이썬 소수 구하기 (1) | 2020.08.28 |
Comments