728x90

try-except 4

[Python]백준 BaekJoon.AC 11723 : 집합(Set)

https://www.acmicpc.net/problem/11723 11723번: 집합 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다. www.acmicpc.net add 조건을 보고 set으로 풀어야겠단 생각이 들었다. 일일이 확인해주는 것보다 애초에 중복을 허용하지 않은 set을 선택했고, 문제 자체에서도 set을 요구하고 있음을 느꼈다. 해야 할 연산의 수가 정말 많았고 시간이 넉넉하지 않단 생각이 들어 시간단축을 신경썼다. 첫번째 if문으로 리스트 길이를 확인해준 것도 같은 이유다. 조금이라도 줄여보고자 if문을 넣었는데, 이게 이득이었는진 확인하지 않았다.. 여느 스택 문제처럼 set..

[Python]BaekJoon.AC 2022.01.29

[Python]백준 BaekJoon.AC 10866 : 덱(deque, try-except)

https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 10828-스택, 10856-큐, 이번엔 10866-덱 스택 기본 문제의 마지막인 듯 하다. 애초에 덱으로 문제를 풀어왔기 때문에 이전과 크게 다르지 않다. 명령 가짓수가 많아져 더 추가한 것 말곤 달라진 게 없다. 아래 글을 참고하면 좋겠다. 2022.01.24 - [[Python]BaekJoon.AC] - [Python]백준 BaekJoon.AC 10828 : 스택(deque,..

[Python]BaekJoon.AC 2022.01.24

[Python]백준 BaekJoon.AC 10845 : 큐(deque, try-except)

https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 이전에 했던 10828-스택 변형문제다. 까다롭게 변형된 것도 아니라 기존 틀에 몇 가지만 더해주면 된다. 문제 이름은 '큐'지만... 덱을 이용했다. 파이썬에선 queue와 deque이 뚜렷하게 차별화된 기본 사용법을 가지진 않는 것 같다. 큐보다 덱이 더 기능이 많은 것 같기도 하고... 양방향 추가·추출이 가능한 deque과 그렇지 않은 queue 중 굳이 queue를 사용할..

[Python]BaekJoon.AC 2022.01.24

[Python]백준 BaekJoon.AC 10828 : 스택(deque, try-except)

https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 경우의 수가 많기 때문에 switch문을 사용하면 좋겠지만 파이썬에선 그런 구문이 없다. 하지만 if문의 능력범주가 넓고 이용하기 쉽기 때문에 크게 문제되지 않는 것 같다. 우선 한 줄씩 입력받아 그 라인을 split해 리스트에 저장해주고, if문을 이용해 명령어에 따라 나눠지게 만들었다. 먄악 추가적인 정보가 필요한 명령어라면 아까 저장한 리스트 옆칸엔 반드시 정보가 들어있을 ..

[Python]BaekJoon.AC 2022.01.24
728x90