[파이썬] 3009번. 네 번째 점 풀이

2023. 2. 12. 18:15·알고리즘과 코딩 테스트/백준 25단계

처음 직접 풀었던 풀이 -> 복잡하고, 한 눈에 무슨 풀이인지 파악하기 쉽지 않았다.

입력도 3번에 걸쳐서 받고, 코드는 중복되고, count는 직접 계산해서 더욱 복잡했다.

x_origin_count = 0
y_origin_count = 0

first_point = list(map(int, input().split()))
x_origin = first_point[0]
y_origin = first_point[1]

x_twice = 0
y_twice = 0

second_point = list(map(int, input().split()))
if (x_origin != second_point[0]):
    x_origin_count += 1
    x_twice = second_point[0]
if (y_origin != second_point[1]):
    y_origin_count += 1
    y_twice = second_point[1]


third_point = list(map(int, input().split()))
if (x_origin != third_point[0]):
    x_origin_count += 1
    x_twice = third_point[0]
if (y_origin != third_point[1]):
    y_origin_count += 1
    y_twice = third_point[1]

if (x_origin_count == 1):
    if (y_origin_count == 1):
        print(x_twice, y_twice)
    elif (y_origin_count == 2):
        print(x_twice, y_origin)
elif (x_origin_count == 2):
    if (y_origin_count == 1):
        print(x_origin, y_twice)
    elif (y_origin_count == 2):
        print(x_origin, y_origin)

 


인터넷 풀이를 참고한 2번째 방법 -> List.count() 함수를 사용한다.

x_nums = []
y_nums = []

for _ in range(3):
    x, y = map(int, input().split())
    x_nums.append(x)
    y_nums.append(y)

for i in range(3):
    if (x_nums.count(x_nums[i]) == 1): # 좌표의 x값들 중에서 한 번만 나타난 것이 4번째 좌표의 x값이다.
        x4 = x_nums[i]
    if (y_nums.count(y_nums[i]) == 1):
        y4 = y_nums[i]

print(x4, y4)

 


https://www.acmicpc.net/problem/3009

 

3009번: 네 번째 점

세 점이 주어졌을 때, 축에 평행한 직사각형을 만들기 위해서 필요한 네 번째 점을 찾는 프로그램을 작성하시오.

www.acmicpc.net

 

'알고리즘과 코딩 테스트 > 백준 25단계' 카테고리의 다른 글

[파이썬] 2004번. 조합 0의 개수 풀이  (0) 2023.02.24
[파이썬] 9375번. 패션왕 신해빈 풀이  (0) 2023.02.22
[파이썬] 2981번. 검문 풀이  (1) 2023.02.21
[파이썬] 1002번. 터렛 풀이  (0) 2023.02.20
[파이썬] 2477번. 참외밭 풀이  (0) 2023.02.13
'알고리즘과 코딩 테스트/백준 25단계' 카테고리의 다른 글
  • [파이썬] 9375번. 패션왕 신해빈 풀이
  • [파이썬] 2981번. 검문 풀이
  • [파이썬] 1002번. 터렛 풀이
  • [파이썬] 2477번. 참외밭 풀이
달거달거
달거달거
개발자를 꿈꿉니다
  • 달거달거
    SWEE IT
    달거달거
  • 전체
    오늘
    어제
    • 분류 전체보기 (288)
      • 개발 환경 (5)
        • VSCode (1)
        • 파이썬 (Anaconda) (1)
        • Git (1)
        • Flutter (0)
        • Kotlin (1)
      • Spring (5)
        • 스프링 부트와 JPA 실무 완전 정복 로드맵 (2)
        • 스프링 부트와 AWS로 구현하는 웹 서비스 (1)
        • 채쌤의 스프링 부트 프로젝트 (1)
      • 알고리즘과 코딩 테스트 (16)
        • 파이썬 문법 (2)
        • 백준 25단계 (10)
        • 프로그래머스 코딩 테스트 고득점 Kit (1)
        • 코틀린 문법 (1)
      • 요리 (236)
      • 데이터베이스 (2)
        • MySQL (2)
      • 안드로이드 (11)
        • 연습 코드 (6)
        • 도서 내용 정리 (4)
      • Dart와 Flutter (5)
        • 도서 내용 정리 (4)
        • Flutter 위젯 정리 (1)
        • 15개 프로젝트 (2)
      • 피그마 (0)
        • 도서 내용 정리 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Flutter
    데이터베이스
    백준
    자취요리
    DART
    JPA
    오블완
    AWS
    프로그래머스
    spring
    c++
    git
    티스토리챌린지
    mysql
    주석
    아나콘다
    머신러닝
    코딩 테스트
    알고리즘
    코틀린
    docker
    문법
    node.js
    C
    파이썬
    vscode
    피그마
    안드로이드
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
달거달거
[파이썬] 3009번. 네 번째 점 풀이
상단으로

티스토리툴바