-
15973 두 박스코테 대비 python/백준 2022. 8. 11. 10:07
https://www.acmicpc.net/problem/15973
15973번: 두 박스
표준 입력으로 두 박스의 정보가 한 줄에 하나씩 주어진다. 각 박스의 정보는 왼쪽 아래 꼭짓점 좌표 (x1, y1)과 오른쪽 위 꼭짓점 좌표 (x2, y2)로 구성되는데 이들 좌푯값 x1, y1, x2, y2 (x1 < x2, y1 < y2)
www.acmicpc.net
a= list(map(int,input().split())) b= list(map(int,input().split())) A1 = (a[0],a[3]) A2 = (a[0],a[1]) A3 = (a[2],a[1]) A4 = (a[2],a[3]) B1 = (b[0],b[3]) B2 = (b[0],b[1]) B3 = (b[2],b[1]) B4 = (b[2],b[3]) A=[A1,A2,A3,A4] #A_index=[] B=[B1,B2,B3,B4] #B_index=[] ### ###점, 선, 면 으로 분할 if ((A[0][0]==B[2][0])&(A[0][1]==B[2][1])) or ((A[1][0]==B[3][0])&(A[1][1]==B[3][1])) or ((A[2][0]==B[0][0])&(A[2][1]==B[0][1]))or((A[3][0]==B[1][0])&(A[3][1]==B[1][1])): print("POINT") elif B[3][0]==A[0][0]: if (B[2][1]<A[0][1])&(B[3][1]>A[1][1]): print("LINE") elif B[0][0]==A[3][0]: if (B[2][1]<A[0][1])&(B[3][1]>A[1][1]): print("LINE") elif B[0][1]==A[1][1]: if (B[2][0]>A[1][0])&(B[0][0]<A[2][0]): print("LINE") elif B[1][1]==A[0][1]: if (B[2][0]>A[1][0])&(B[0][0]<A[2][0]): print("LINE") elif (B[3][0]<=A[0][0]) or (A[3][0]<=B[0][0]) or (B[1][1]>=A[0][1]) or (A[1][1]>=B[0][1]) or (((B[0][0]<A[0][0])&(B[0][1]>A[0][1]))&((B[3][0]>A[3][0])&(B[3][1]<A[3][1]))) or (((A[0][0]<B[0][0])&(A[0][1]>B[0][1]))&((A[3][0]>B[3][0])&(A[3][1]<B[3][1]))): print("NULL") else: print("FACE")
어제 올렸어야 했는데ㅜㅜ
와 이렇게 했는데도 33점으로 100점이 안나왔다.
다른사람들이 푼거 보니 현타가.. ㅋㅋㅋ
일주일뒤에 다시풀어봐야겠다.
'코테 대비 python > 백준' 카테고리의 다른 글
7568 덩치 (0) 2022.08.11 15686 치킨 배달 (0) 2022.08.11 1316 그룹 단어 체커 (1) 2022.08.05 2960 에라토스테네스의 체 (0) 2022.08.05 21608 상어 초등학교 (0) 2022.08.05