BOJ 15663 N과 M (9)
·
Algorithm/문제풀이
https://www.acmicpc.net/problem/15663 문제 풀이이전 N과 M문제들과 다른점은 이제 입력한 수들이 중복된 수가 들어갈 수 있다는 점이다. 또한 문제 조건에서 중복되는 수는 여러번 출력하면 안된다고 하였기 때문에 그에 대한 처리를 해줘야 한다.처음에 temp에 들어갈 수는 7 다시 백트래킹을 하고 난 뒤 다음에 들어갈 수는 1,9 7은9랑 겹치지 않으므로 그대로 출력. 그다음 temp는 9인데 그림에서 마지막에 1,9에서 9가 들어올 수인데 temp과 중복 되므로 if문 안드로 들어오지 못하고 넘어감. #include #include #include #include #include #include #include #include #include #include #include ..
BOJ 15650 N과 M (2)
·
Algorithm/문제풀이
15650번: N과 M (2)문제자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오.1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열고른 수열은 오름차순이어야 한다입력첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8)출력한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 문제 풀이이 문제는 백트래킹을 사용하여 문제를 풀었습니다. 백트래킹이란 ? 현재 상태에서 가능한 모든 후보군을 따라 들어가며 탐색하는 알고리즘입니다.위와 같은 방식으로 한 배열와 특정한 수가 쓰였는지에 대한 배열을 선..