23253번: 자료구조는 정말 최고야
위 그림처럼 책이 쌓여 있으므로, 첫 번째 더미 - 두 번째 더미 - 첫 번째 더미 - 두 번째 더미 순으로 꺼내면 책 번호순으로 나열할 수 있다.
www.acmicpc.net

b, d = map(int, input().split())
tf = True                                       # yes no를 판단할 변수
for _ in range(d):                              # 더미의 수만큼 돌아
    b_num = int(input())                        # 한 더미의 책의 수 b_num을 받아와
    b_list = list(map(int, input().split()))    # 한 더미의 b_list를 받아와서 
    for b in range(b_num - 1):                  # b_list를 돌려보는거야
        # 이 문제는 따로 스택을 활용할 필요없이 각각의 더미들이 내림차순으로만 정렬되어 있으면 yes가 나오는 문제야
        if b_list[b] < b_list[b + 1]:           # 그런데 중간이라도 오름차순이 끼어있다면 
            tf = False                          # No가 나와야해
            break                               # for문은 더이상 의미 없으니 나와
    if not tf:                                  # No가 나오면
        break                                   # 밖의 for문도 더이상 의미 없으니 나와
print('Yes' if tf else "No")                    # tf의 결과에 따라 yes 나 no 출력'Problem Solving > 백준' 카테고리의 다른 글
| 백준 1076 저항 [파이썬, 구현] (0) | 2023.03.24 | 
|---|---|
| 백준 9012 괄호 [파이썬, 자료 구조, 문자열, 스택] (0) | 2023.03.23 | 
| 백준 11652 카드 [파이썬, 자료 구조, 정렬, 해시를 사용한 집합과 맵] (0) | 2023.03.22 | 
| 백준 1764 듣보잡 [파이썬, 자료 구조, 문자열, 정렬, 해시를 사용한 집합과 맵] (0) | 2023.03.21 | 
| 백준 1302 베스트셀러 [파이썬, 자료 구조, 문자열, 정렬, 해시를 사용한 집합과 맵] (0) | 2023.03.21 | 
 
										
									 
										
									 
										
									 
										
									
댓글