본문 바로가기
Algorithm

[자료구조/스택] 백준 28278 스택 2 - 파이썬(Python)

by jangThang 2023. 8. 10.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    28278번: 스택 2

    첫째 줄에 명령의 수 N이 주어진다. (1 ≤ N ≤ 1,000,000) 둘째 줄부터 N개 줄에 명령이 하나씩 주어진다. 출력을 요구하는 명령은 하나 이상 주어진다.

    www.acmicpc.net

     

     

     

    2. 문제 풀이

     스택 자료구조를 구현하는 문제입니다.

     

    2023.07.17 - [Algorithm] - [자료구조/스택] 백준 10828 스택 - 파이썬(Python)

     

    [자료구조/스택] 백준 10828 스택 - 파이썬(Python)

    [ Contents ] 1. 문제 (링크 참조) 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 1

    star7sss.tistory.com

     백준 10828 스택과 입력 방식만 다른 문제입니다. 스택의 자료구조만 이해하고 있다면 손쉽게 풀 수 있습니다.

     

    반응형

     

    3. 코드

    import sys
    input = sys.stdin.readline
    
    
    N = int(input())
    stack = []
    for _ in range(N):
        command = input().rstrip()
        
        #push
        if len(command) > 2:
            stack.append(int(command[2:]))
        
        #pop
        elif command == '2':
            if len(stack)==0:
                print(-1)
            else:
                print(stack.pop())
        
        #size
        elif command == '3':
            print(len(stack))
    
        #empty
        elif command == '4':
            print(1 if len(stack)==0 else 0)
        
        #top
        elif command == '5':
            if len(stack)==0:
                print(-1)
            else:
                print(stack[-1])
                
        #print(command)
        #print(stack)

     

     

    star가 되고나서 Tistory

    반응형

    댓글