본문 바로가기

Algorithm197

[백준 15655] N과 M (6) 15655번: N과 M (6) (acmicpc.net) 15655번: N과 M (6) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net 정답 풀이 #include using namespace std; int n, m; int arr[10]; bool isused[10]; int num[10]; void func(int k){ // 현재 k개까지 수를 택했음. if(k == m){ // m개를 모두 택했으면 for(int i = 0; i m; for(int i = 0; i > n.. 2022. 9. 19.
[백준 15656] N과 M (7) 15656번: N과 M (7) (acmicpc.net) 정답 풀이 // http://boj.kr/8b9c11f721a44186bb4da3bff5e72f88 #include using namespace std; int n, m; int arr[10]; int num[10]; void func(int k){ // 현재 k개까지 수를 택했음. if(k == m){ // m개를 모두 택했으면 for(int i = 0; i m; for(int i = 0; i > num[i]; } sort(num, num+n); func(0); } 2022. 9. 19.
[백준 15654] N과 M (5) 15654번: N과 M (5) (acmicpc.net) 15654번: N과 M (5) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net 배운것 int arr[] 를 sort 할 때 : sort(arr, arr+n); vetor arr를 sort할 때: sort(arr.begin(), arr.end()) 내 풀이 #include using namespace std; int n, m; int a[10]; int t[10]; bool isused[10]; void func(int k) { // 현재 k개까지 수를 택했음. if (k == .. 2022. 9. 16.
[백준 15652] N과 M (4) 15652번: N과 M (4) (acmicpc.net) 15652번: N과 M (4) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 정답 코드 #include using namespace std; int n, m; int arr[10]; void func(int k){ // 현재 k개까지 수를 택했음. if(k == m){ // m개를 모두 택했으면 for(int i = 0; i < m; i++) cout m; func(0); } 2022. 9. 16.
[백준 15651] N과 M (3) 15651번: N과 M (3) (acmicpc.net) 15651번: N과 M (3) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 정답 코드 #include using namespace std; int n, m; int arr[10]; void func(int k){ // 현재 k개까지 수를 택했음. if(k == m){ // m개를 모두 택했으면 for(int i = 0; i < m; i++) cout m; func(0); } 2022. 9. 16.
[백준 15650] N과 M (2) 15650번: N과 M (2) (acmicpc.net) 15650번: N과 M (2) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 배운것 - N과 M (1) 같은 경우에는 오름차순으로 싹다 뽑으면 되니까 for문 돌릴 때 그냥 i=0부터 신경쓰지 않아도 되었는데 N과 M (2)의 경우 중복되면 안되고 ( {1,2,3} , {3,2,1} ) 오름차순이라서 i=0으로 놓으면 안됨 그래서 시작 변수를 만들어줘서 임의로 변경을 시켜줌 - 순열과 조합 정답 코드 1 #include using namespace std; int n, m; int .. 2022. 9. 16.