Notice
Recent Comments
Link
Today
Total
12-21 00:41
«   2024/12   »
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 31
Archives
관리 메뉴

nayonngme

[코딩테스트 예시] 나머지 한 점 본문

Algorithm/프로그래머스

[코딩테스트 예시] 나머지 한 점

nayonng 2023. 10. 6. 20:05
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

제한사항
v는 세 점의 좌표가 들어있는 2차원 배열입니다.
v의 각 원소는 점의 좌표를 나타내며, 좌표는 [x축 좌표, y축 좌표] 순으로 주어집니다.
좌표값은 1 이상 10억 이하의 자연수입니다.
직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 [x축 좌표, y축 좌표] 순으로 담아 return 해주세요.

 

입출력 예
v result
[[1, 4], [3, 4], [3, 10]] [1, 10]
[[1, 1], [2, 2], [1, 2]] [2, 1]

입출력 예 #1
세 점이 [1, 4], [3, 4], [3, 10] 위치에 있을 때, [1, 10]에 점이 위치하면 직사각형이 됩니다.

입출력 예 #2
세 점이 [1, 1], [2, 2], [1, 2] 위치에 있을 때, [2, 1]에 점이 위치하면 직사각형이 됩니다.


def solution(v):
    answer = []
    v1 = []
    v2 = []
    
    for i in v:
        if i[0] not in v1:
            v1.append(i[0])
        else:
            v1.remove(i[0])
            
        if i[1] not in v2:
            v2.append(i[1])
        else:
            v2.remove(i[1])
            
    answer = v1+v2

    return answer
def solution(v):
    n = len(v)
    x = [0] * 4
    y = [0] * 4
    answer = []

    for i in range(0, 3) :
        x[i] = v[i][0]
        y[i] = v[i][1]

    for j in range(0, 3):
        if x.count(x[j]) == 1 :
            x[3] = x[j]
        if y.count(y[j]) == 1 :
            y[3] = y[j]
        answer = [x[3], y[3]]
        
    return answer
Comments