서론
없음.
문제
알고리즘 문제 해설 - 나머지 한 점
프로그래머스의 모의테스트는 프로그래머스의 시스템에 익숙해지기 위한 테스트이며, 문제 자체는 2018 1ST KAKAO BLIND RECRUITMENT와 전혀 관계없습니다. 다만 모의테스트의 풀이에 대한 요청이 있어
programmers.co.kr
직사각형을 만드는 데 필요한 4개의 점 중 3개의 좌표가 주어질 때, 나머지 한 점의 좌표를 구하려고 합니다. 점 3개의 좌표가 들어있는 배열 v가 매개변수로 주어질 때, 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 return 하도록 solution 함수를 완성해주세요. 단, 직사각형의 각 변은 x축, y축에 평행하며, 반드시 직사각형을 만들 수 있는 경우만 입력으로 주어집니다.
나의 풀이
def solution(v):
answer = []
for i in range(0,2):
if (n:=[t[i] for t in v]).count(max(n)) > n.count(min(n)):
answer.append(min(n))
else:
answer.append(max(n))
return answer
x,y 좌표별로 아직 나오지 않은 한 점의 좌표는 3가지 좌표 중 1개와 같은 것이라고 생각을 하였다.
if문에서 좌측이 크면 좌측 값이 2번 나왔다는 의미이므로 우측의 값을 append하는 방식이다.
설명은 어렵긴 한데 나도 좋은 풀이라고는 생각하지 않는다.
다른분들의 풀이 중에선 XOR을 활용한 방식이 가장 창의적이었다.
+ 피드백과 새로운 풀이 방법은 언제든지 환영입니다!
'코딩테스트 > [python]프로그래머스' 카테고리의 다른 글
[python] 프로그래머스 42626 : 더 맵게 (0) | 2022.04.29 |
---|---|
[python] 프로그래머스 72410 : 신규 아이디 추천 (2) | 2022.04.28 |
[python] 프로그래머스 12903 : 가운데 글자 가져오기 (0) | 2022.04.26 |
[python] 프로그래머스 17681 : [1차] 비밀지도 (0) | 2022.04.25 |
[python] 프로그래머스 12932 : 자연수 뒤집어 배열로 만들기 (0) | 2022.04.25 |
댓글