두 부분에 오류가 있습니다.
우선 11행에 remove()를 사용하셨는데 이러면 중복된 값이 stack에 들어있을 경우 문제가 발생합니다.
왜냐하면 remove(x)는 0번부터 탐색하면서 만나는 첫번째 x를 제거하기 때문입니다.
반례입니다.
5 push 2 push 1 push 2 pop pop
이러면 출력은
2 2
이렇게 됩니다.
그리고 input()으로 받으면 안됩니다.
왜냐하면 최대 10,000번 입력을 받아서 시간 초과가 뜹니다.
sys.stdin.readline().split()으로 받아보세요.
예시입니다.
mingling = sys.stdin.readline().split()
그리고 입력을 받으면 어차피 문자열로 받게 되기 때문에 map(str, ...)를 할 필요 없습니다.
그리고 list()도 사용할 필요가 없어요.
split()는 어차피 list를 return 합니다.
dawn421 2년 전
안녕하세요 스택 구현 문제인데 예제는 다 돌아가는데 어디서 틀렸는지 잘 모르겠네요 혹시 참고할 반례가 있을까요?
항상 감사드립니다.