Skip to content

Commit 7351206

Browse files
Merge pull request #724 from gmlrude/main
[박희경] 114차 라이브 코테 제출
2 parents 239e997 + 57ec8ad commit 7351206

2 files changed

Lines changed: 54 additions & 0 deletions

File tree

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import sys
2+
from itertools import *
3+
4+
input = sys.stdin.readline
5+
6+
expr= list(map(str, input().rstrip()))
7+
8+
stack = []
9+
pairs = []
10+
for idx, char in enumerate(expr):
11+
if char == '(':
12+
stack.append(idx)
13+
elif char == ')':
14+
open_idx = stack.pop()
15+
pairs.append((open_idx, idx))
16+
17+
res = set()
18+
for i in range(1, len(pairs) + 1):
19+
for comb in combinations(pairs, i):
20+
temp = list(expr)
21+
for open_idx, close_idx in comb:
22+
temp[open_idx] = ''
23+
temp[close_idx] = ''
24+
res.add(''.join(temp))
25+
26+
for r in sorted(res):
27+
print(r)
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import sys
2+
3+
4+
input = sys.stdin.readline
5+
6+
n = int(input())
7+
radius = []
8+
for _ in range(n):
9+
x, r = map(int, input().split())
10+
radius.append((x-r, x+r))
11+
12+
radius.sort()
13+
14+
flag = 'YES'
15+
stack = []
16+
for start, end in radius:
17+
if not stack:
18+
stack.append((start, end))
19+
else:
20+
pre_start, pre_end = stack.pop()
21+
if pre_start >= start or pre_end == start: # 맞닿아 있을 때
22+
flag = 'NO'
23+
break
24+
if pre_end > start and pre_end <= end: # 겹칠 때
25+
flag = 'NO'
26+
break
27+
print(flag)

0 commit comments

Comments
 (0)