0️⃣ Algorithm&자료구조/BOJ(35)
-
[BOJ] #10773 제로
import sys n = int(sys.stdin.readline()) class stacking: def __init__(self): self.top = [] def push(self, a): return self.top.append(a) def pop(self): if not self.top: pass else: return self.top.pop() def ssum(self): return sum(self.top) stack = stacking() def solution(s): if s > 0 : stack.push(s) else: stack.pop() for i in range(n): s = int(sys.stdin.readline()) solution(s) print(stack.ssum())
2022.04.25 -
[BOJ] #10828번 스택
import sys N = int(sys.stdin.readline()) class stacking: def __init__(self): self.top = [] def push(self, a): return self.top.append(a) def pop(self): if not self.top: return print(-1) else: pop_object = self.top.pop() return print(pop_object) def size(self): return print(len(self.top)) def empty(self): if len(self.top) > 0: return print(0) else: return print(1) def ttop(self): if not self.top: ..
2022.04.25 -
[BOJ] #15652번 - N과 M (4)
#15652번 - N과 M (4) 통과 Code import sys n, m = map(int, sys.stdin.readline().split()) a = [] def solution(): if len(a) == m : return print(' '.join(map(str, a))) for i in range(1, n+1): if len(a) > 0: if i < a[-1]: continue a.append(i) solution() a.pop() solution() 시간 복잡도 : O(n^m) 공간 복잡도 : O(1)
2022.04.16 -
[BOJ] # 15651번 - N과 M (3)
# 15651번 - N과 M (3) 통과 Code import sys n, m = map(int, sys.stdin.readline().split()) a = [] def solution(): if len(a) == m : return print(' '.join(map(str, a))) for i in range(1, n+1): a.append(i) solution() a.pop() solution() 시간 복잡도 : O(n^m) 공간 복잡도 : O(1)
2022.04.16 -
[BOJ] # 15650 - N과 M (2)
BOJ # 15650 - N과 M (2) Back Tracking 문제이다. N과 M (1) 문제에서 살짝 변형된 것으로, (1) 문제를 풀 수 있다면 쉽게 통과할 수 있다. 통과 Code import sys n,m = map(int, sys.stdin.readline().split()) a = [] def solution(): if len(a) == m: print(' '.join(map(str, a))) for i in range(1, n+1): if i in a: continue elif len(a) >= 1 and i < max(a) : continue a.append(i) solution() a.pop() solution()
2022.04.15