본문 바로가기

Problem Solving94

[Backtracking] 15652 N과 M(4) https://www.acmicpc.net/problem/15652 15652번: N과 M (4) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net # 2022.12.30 import sys input = sys.stdin.readline n, m = map(int, input().split()) answer = [] def backtracking(start): if len(answer)==m: print(' '.join(map(str, answer))) return for i in range(start, n+1): answer.append.. 2022. 12. 30.
[Backtracking] 15649 N과 M(1) https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net # 2022.12.30 import sys input = sys.stdin.readline n, m = map(int, input().split()) answer = [] def backtracking(): if len(answer)==m: print(' '.join(map(str, answer))) for i in range(1, n+1): if i not in answer: answer.ap.. 2022. 12. 30.
[Backtracking] BOJ 15650 N과 M(2) https://www.acmicpc.net/problem/15650 15650번: N과 M (2) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net #2022.12.29 import sys input=sys.stdin.readline n, m = map(int, input().split()) answer = [] def backtracking(start): if len(answer)==m: print(' '.join(map(str, answer))) for i in range(start, n+1): if i not in answer: ans.. 2022. 12. 30.
[Back Tracking] 복면산 https://www.acmicpc.net/problem/15811 import sys input=sys.stdin.readline from itertools import permutations cnt=0 def to_int(rev, DICT): value=0 for i in range(len(rev)): value+=DICT[rev[i]]*(10**i) return value def promising(i, n, D, s1, s2, s3): if i==0: return True a=to_int(s1, D) b=to_int(s2, D) c=to_int(s3, D) M=10**i return (a+b)%M == c%M def backtrack(i, n, D, r1, r2, r3): global cnt if .. 2022. 12. 15.