문제:
코드트리 | 코딩테스트 준비를 위한 알고리즘 정석
국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.
www.codetree.ai
풀이과정: 첨에 같은 수가 3번이상 나오면 안된다는 걸로 보고 실수 했다.. 근데 알고보니 연속해서 3번 나오는 것이었다. 그런데도 조건같은 걸 빼먹고 더해주는걸 빼먹고 해서 좀 헤맸다.
코드:
k, n = map(int, input().split())
num = []
def choose(curr, cnt):
if curr == n+1:
for a in num: print(a, end=' ')
print()
return
for i in range(1, k+1):
if cnt < 2 or num[-1] != i:
prev_cnt = cnt
if curr != 1 and num[-1] == i: cnt += 1
else:
prev_cnt = cnt
cnt = 1
num.append(i)
choose(curr+1, cnt)
num.pop()
cnt = prev_cnt
return
choose(1, 0)
실력진단:
오늘 공부한 부분과 dfs는 맞았는데 dp문제에서 dfs로 풀려고 하다보니 틀렸다. 다음엔 dp문제를 풀어보겟다.
'코드트리 블로그 챌린지' 카테고리의 다른 글
[코드트리 챌린지](6주차) BFS/네방향탈출가능여부판단하기 (0) | 2023.10.14 |
---|---|
[코드트리 챌린지] (5주차) DFS/안전지대 (0) | 2023.10.07 |
[코드트리 챌린지](4주차) DFS_마을 구분하기 (0) | 2023.10.01 |
[코드트리 챌린지](2주차) 빙빙 돌며 숫자 사각형 채우기2 (1) | 2023.09.15 |
[코드트리 챌린지] (1주차) 날짜와 시간 계산 / 그 요일은 (0) | 2023.09.06 |
댓글