방명록
- 백준(BAEKJOON) 22942 데이터 체커 - Python2023년 12월 26일 18시 49분 06초에 업로드 된 글입니다.작성자: Moonsu99
https://www.acmicpc.net/problem/22942
22942번: 데이터 체커
데이터가 조건에 맞는다면 YES, 조건에 만족하지 않는다면 NO를 출력한다.
www.acmicpc.net
과정
중심 좌표는 x축 기준
교점이 존재해서는 안됨 → 원 두개 잇을때 이중원? 아니면 아예 별도로
개수n
중심좌표 x
반지름 r
원 시작좌표 끝좌표
x-r = 시작좌표 x+r 끝좌표
풀이
import sys input = sys.stdin.readline # 원의 개수 입력 N = int(input()) # 각 원의 정보 입력 및 처리 circles_point = [] # 원들이 서로 겹치는지 확인 stack = [] for i in range(N): x, r = map(int, input().split()) circles_point.append((x - r, i, 0)) # 원의 시작점 circles_point.append((x + r, i, 1)) # 원의 끝점 # x좌표를 기준으로 정렬 circles_point.sort() for point in circles_point: x, close, open = point if open == 0: # 원 시작지점 stack.append(point) else: # 원 끝지점 if stack[-1][1] != close: # 스택의 마지막 원과 번호가 다르면 겹치는 것 print("NO") exit(0) stack.pop() # 스택에서 제거 print("YES") # 모든 원이 겹치지 않음
'코딩테스트 > 백준' 카테고리의 다른 글
백준(BAEKJOON) 10828 스택 - Kotlin (0) 2024.07.30 [프로그래머스 LV2] 튜플 - Python (0) 2024.03.28 백준(BAEKJOON) 1918 후위표기식 - Python (1) 2023.12.26 백준(BAEKJOON) 2800 괄호제거 - Python (1) 2023.12.03 백준(BAEKJOON) 2504 괄호의 값 - Python (0) 2023.12.01 다음글이 없습니다.이전글이 없습니다.댓글