𝘼𝙣𝙖𝙡𝙮𝙨𝙞𝙨/ᴀʟɢᴏʀɪᴛʜᴍ

collections.Counter

콜라맛갈비 2023. 4. 28. 12:20
728x90

문제 설명

직사각형을 만드는 데 필요한 4개의 점 중 3개의 좌표가 주어질 때, 나머지 한 점의 좌표를 구하려고 합니다. 점 3개의 좌표가 들어있는 배열 v가 매개변수로 주어질 때, 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 return 하도록 solution 함수를 완성해주세요. 단, 직사각형의 각 변은 x축, y축에 평행하며, 반드시 직사각형을 만들 수 있는 경우만 입력으로 주어집니다.

 

import collections

def solution(v) :
	x = [i[0] for i in v]
    y = [i[1] for i in v]
    
    x_cnt = collections.Counter(x)
    y_cnt = collections.Counter(y)
    #출력예시
    #Counter({1: 2, 2: 1})
	
    x_re = [i for i in x_cnt if x_cnt[i] == 1]
    y_re = [i for i in y_cnt if y_cnt[i] == 1]
    
    answer = x_re + y_re
    
    return answer
728x90

'𝘼𝙣𝙖𝙡𝙮𝙨𝙞𝙨 > ᴀʟɢᴏʀɪᴛʜᴍ' 카테고리의 다른 글

combinations  (0) 2023.04.28
.__contains__  (0) 2023.04.28
itertools-combinations, math  (0) 2023.04.28
[Programmers] 합성수 찾기  (0) 2023.04.02
[Programmers] 문자열 정렬하기 (2)  (0) 2023.04.02