[백준] 15663번 - Silver 3 N과 M (9), 파이썬 코드
·
Algorithm/BOJ
solved.ac의 Class 4 문제 중 N과 M(4) 문제이다.1부터 비내림차순으로 내려가야 하는 특징 때문에 재귀 DFS 문제라는 것을 알 수 있다."한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다." 라는 주의사항이 있으니 조심하자. 해결했던 코드는 다음과 같다.import sysglobal n, mnumbers = []lst = []visited = []def dfs(): before = 0 if len(lst) == m: print(*lst) return for i in range(n): if before != numbers[i] and not v..
[백준] 15654번 - Silver3 N과 M(5), 파이썬 코드
·
Algorithm/BOJ
solved.ac의 Class 4 문제 중 N과 M(5) 문제이다. 주어진 숫자들을 정렬한 리스트를 재귀 백트래킹하는 문제라는 것을 알 수 있다." 수열은 사전 순으로 증가하는 순서로 출력해야 한다. "이라는 문제의 특징이 있으니 조심하자. 해결했던 코드는 다음과 같다.import sysglobal n, mnumbers = []lst = []def backtracking(d): # d가 m과 같아지면 return if d == m: print(" ".join(map(str, lst))) return for i in range(n): if numbers[i] in lst: continue; lst.append(numbers[i]) ..
[백준] 15650번 - Silver 3 N과 M (2), 파이썬 코드
·
Algorithm/BOJ
solved.ac의 Class 4 문제 중 N과 M(2) 문제이다. 1부터 비내림차순으로 내려가야 하는 특징 때문에 재귀 DFS 문제라는 것을 알 수 있다."1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열"이라는 문제의 특징이 있으니 조심하자. 해결했던 코드는 다음과 같다. import sysglobal n, mlst = []def dfs(num): # 리스트의 개수가 m과 같아지면 return if len(lst) == m: print(" ".join(map(str, lst))) return for i in range(num+1, n+1): lst.append(i) dfs(i) lst.pop()if __name__ ..
[백준] 15652번 - Silver 3 N과 M(4), 파이썬 코드
·
Algorithm/BOJ
solved.ac의 Class 4 문제 중 N과 M(4) 문제이다.  1부터 비내림차순으로 내려가야 하는 특징 때문에 재귀 DFS 문제라는 것을 알 수 있다."같은 수를 여러 번 골라도 된다."라는 문제의 특징이 있으니 조심하자. 해결했던 코드는 다음과 같다.import sysglobal n, mlst = []def dfs(num): # 리스트의 개수가 m과 같아지면 return if len(lst) == m: print(" ".join(map(str, lst))) return for i in range(num, n+1): lst.append(i) dfs(i) lst.pop()if __name__ == "__main__..
ramin0119
'N과 M' 태그의 글 목록