[백준] 10974 모든 순열
2021. 1. 21. 23:40
Problem set
10974번: 모든 순열 N이 주어졌을 때, 1부터 N까지의 수로 이루어진 순열을 사전순으로 출력하는 프로그램을 작성하시오. www.acmicpc.net #include #include #include using namespace std; int main() { int n; cin >> n; vector a(n); for (int i=0; i
[백준] 10973 이전 순열
2021. 1. 21. 23:37
Problem set
10973번: 이전 순열 첫째 줄에 입력으로 주어진 순열의 이전에 오는 순열을 출력한다. 만약, 사전순으로 가장 처음에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net #include #include #include using namespace std; int main() { int n; cin >> n; vector a(n); for (int i=0; i> a[i]; } if (prev_permutation(a.begin(),a.end())) { for (int i=0; i
[백준] 10972 다음 순열
2021. 1. 21. 23:34
Problem set
10972번: 다음 순열 첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전순으로 마지막에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net #include #include #include using namespace std; int main() { int n; cin >> n; vector a(n); for (int i=0; i> a[i]; } if (next_permutation(a.begin(),a.end())) { for (int i=0; i
[백준] 15666 N과 M (12)
2021. 1. 21. 23:30
Problem set
15666번: N과 M (12) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net #include #include using namespace std; int a[10]; int num[10]; int c[10]; void go(int index, int start, int n, int m) { if (index == m) { for (int i=0; i temp[i]; } sort(temp,temp+n); int k = 0; for (int i=0; i 0 && temp[i] == temp[i-1]) continue; num[k++] = ..
[백준] 15665 N과 M (11)
2021. 1. 21. 23:28
Problem set
15665번: N과 M (11) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net #include #include using namespace std; int a[10]; int num[10]; int c[10]; void go(int index, int n, int m) { if (index == m) { for (int i=0; i temp[i]; } sort(temp,temp+n); int k = 0; for (int i=0; i 0 && temp[i] == temp[i-1]) continue; num[k++] = temp[i]; } ..
[백준] 15664 N과 M (10)
2021. 1. 21. 23:26
Problem set
15664번: N과 M (10) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net #include #include #include using namespace std; int a[10]; int num[10]; int c[10]; vector d; void go(int index, int start, int n, int m) { if (index == m) { vector temp; for (int i=0; i n >> m; for (int i=0; i> num[i]; } sort(num,num+n); go(0,0,n,m); sort(d.b..
[백준] 15663 N과 M (9)
2021. 1. 21. 23:23
Problem set
15663번: N과 M (9) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net #include #include #include using namespace std; int a[10]; int num[10]; int c[10]; vector d; void go(int index, int n, int m) { if (index == m) { vector temp; for (int i=0; i n >> m; for (int i=0; i> num[i]; } sort(num,num+n); go(0,n,m); sort(d.begin(), d.end(..
[백준] 15657 N과 M (8)
2021. 1. 21. 23:16
Problem set
15657번: N과 M (8) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net #include #include using namespace std; int a[10]; int num[10]; int c[10]; void go(int index, int start, int n, int m) { if (index == m) { for (int i=0; i num[i]; } sort(num,num+n); go(0,0,n,m); return 0; } #include #include using namespace std; int cnt[10]..