Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 백트래킹
- 백준 2529
- 스레드
- Spring Security
- 백준
- 코테
- 백준 14499
- 파이썬
- 백준 10819
- 백준 15686
- 락
- 백준 2302
- 코딩테스트
- 운영체제
- CI/CD
- 백준 파이썬
- CS
- 네이버
- 백준 1120
- 도커
- 자바스크립트
- 9465 스티커
- docker
- 스프링
- 후위 표기식
- 다익스트라
- 프로세스
- 프로그래머스
- Spring
- 증가하는부분수열
Archives
- Today
- Total
개발
[백준] 2529 부등호 (파이썬) 본문
전형적인 백트래킹 문제였다. 백트래킹 문제는 풀때마다 쾌감이 느껴진다..
import sys
input = sys.stdin.readline
visited = [0 for _ in range(10)]
n = int(input())
oper = input().rstrip().split()
res_max = -sys.maxsize
res_min = sys.maxsize
def solution(cur, idx, res):
global res_max, res_min
if idx == n:
number = int(res)
if number > res_max:
res_max = number
if number < res_min:
res_min = number
return res
op = oper[idx]
for i in range(len(visited)):
if visited[i]: continue
if op == ">":
if cur > i:
visited[i] = 1
solution(i, idx+1, res+str(i))
visited[i] = 0
elif op == "<":
if cur < i:
visited[i] = 1
solution(i, idx+1, res+str(i))
visited[i] = 0
for i in range(len(visited)):
visited[i] = 1
solution(i, 0, str(i))
visited[i] = 0
print(res_max)
if len(str(res_min)) < n+1:
print("0" + str(res_min))
else:
print(res_min)'알고리즘 > 문제' 카테고리의 다른 글
| [백준] 14499 주사위 굴리기 (파이썬) (0) | 2022.08.29 |
|---|---|
| [백준] 15686 치킨배달 (파이썬) (0) | 2022.08.08 |
| [백준] 1120 문자열 (파이썬) (0) | 2022.07.29 |
| [백준] 2302 극장 좌석 (파이썬) (0) | 2022.07.20 |
| [백준] 9465 스티커 (파이썬) (0) | 2022.07.20 |