[백준] 18258번 큐 2 (Python)
·
알고리즘/백준
문제www.acmicpc.net/problem/18258 18258번: 큐 2첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지www.acmicpc.net 코드import sysfrom collections import dequeN = int(input())queue = deque()def push(X): queue.append(X)def pop(): if not queue: return -1 return queue.popleft()def size(): return len(queue)def empty():..
[백준] 9012번 괄호 (Python)
·
알고리즘/백준
문제www.acmicpc.net/problem/9012 9012번: 괄호괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고www.acmicpc.net 코드T = int(input())for i in range(T): stack = [] a=input() for j in a: if j == '(': stack.append(j) elif j == ')': if stack: stack.pop() else: #..
[백준] 10828번 스택 (Python)
·
알고리즘/백준
문제www.acmicpc.net/problem/10828 10828번: 스택첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지www.acmicpc.net 코드import sysN = int(input())stack = []a = []def push(X): stack.append(X)def pop(): if not stack: return -1 else: return stack.pop()def size(): return len(stack)# false = 0, true =1def empty(): ..
[백준] 1010번 다리 놓기 (Python)
·
알고리즘/백준
문제www.acmicpc.net/problem/1010 1010번: 다리 놓기입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 www.acmicpc.net 코드def fac(a): if a==0: return 1 if a==1: return 1 else: return a * fac(a-1)# nCk = n! / ((n-k)! * k!)T = int(input())for i in range(T): n, m = map(int, input().split()) # m개점중에서 n개를 선택하는 경우의수. mCn print(fac(m) // (f..