반응형

Algorithm/BAEKJOON 131

[ C / C++ ] 백준 15815 천재 수학자 성필

문제 평행 세계의 성필은 숫자와 연산자를 만든 당대 최고의 수학자이다. 그리고 놀랍게도 이 숫자와 연산자는 현재 우리가 사용하는 것과 같다. 하지만 수식은 연산자가 피연산자 가운데 위치하는 우리와는 다르게 연산자가 피연산자 뒤에 위치한다고 한다. 우리 세계의 식을 성필의 식으로 바꾸는 방법을 간단히 설명하자면 이렇다. 우선 주어진 식을 연산자의 우선순위에 따라 괄호로 묶어준다. 그런 다음에 괄호 안의 연산자를 괄호의 오른쪽으로 옮겨주면 된다. 예를 들어 a+b*c는 (a+(b*c))의 식과 같게 된다. 그다음에 안에 있는 괄호의 연산자 *를 괄호 밖으로 꺼내게 되면 a+bc*가 된다. 마지막으로 또 +를 괄호의 오른쪽으로 고치면 abc*+가 되게 된다. 천재 수학자 성필은 자신이 만든 이런 간단한 식조차..

Algorithm/BAEKJOON 2022.05.16

[ C / C++ ] 백준 15664 N과 M(10)

문제 N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수 중에서 M개를 고른 수열 고른 수열은 비내림차순이어야 한다. 길이가 K인 수열 A가 A1 ≤ A2 ≤ ... ≤ AK-1 ≤ AK를 만족하면, 비내림차순이라고 한다. #include #include using namespace std; bool check[8]; int n, m, num[8], result[8]; void getResult(int count, int start) { if (count == m) { for (int i = 0; i m; for (int i = 0; i > num[i]; sort(n..

Algorithm/BAEKJOON 2022.05.15

[ C / C++ ] 백준 15663 N과 M(9)

문제 N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수 중에서 M개를 고른 수열 #include #include using namespace std; bool check[8]; int n, m, num[8], result[8]; void getResult(int count) { if (count == m) { for (int i = 0; i m; for (int i = 0; i > num[i]; sort(num, num + n); getResult(0); return 0; }

Algorithm/BAEKJOON 2022.05.14

[ C / C++ ] 백준 15656 N과 M(7)

문제 N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도 된다. #define _CRT_SECURE_NO_WARNINGS #include #include #include using namespace std; int n, m, visited[7], ans[7]; void go(int index) { if (index == m) { for (int i = 0; i < m; i++) printf("%d ", ans[i]); printf("\n"); return; } for (int i = 0; i < n; i++) { ans[index] = ..

Algorithm/BAEKJOON 2022.05.13

[ C / C++ ] 백준 15655 N과M(6)

문제 N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 고른 수열은 오름차순이어야 한다. #define _CRT_SECURE_NO_WARNINGS #include #include #include using namespace std; int n, m, visited[8], ans[10]; bool check[8]; void go(int index, int pre) { if (index == m) { for (int i = 0; i < m; i++) printf("%d ", ans[i]); printf("\n"); return; } for (int i = pre; ..

Algorithm/BAEKJOON 2022.05.12

[ C / C++ ] 백준 15654 N과M(5)

문제 N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 #define _CRT_SECURE_NO_WARNINGS #include #include #include using namespace std; int n, m, visited[8], ans[10]; bool check[8]; void go(int index) { if (index == m) { for (int i = 0; i < m; i++) printf("%d ", ans[i]); printf("\n"); return; } for (int i = 0; i < n; i++) { if (!check[i]) {..

Algorithm/BAEKJOON 2022.05.11

[ C / C++ ] 백준 15652 N과M(4)

문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도 된다. 고른 수열은 비내림차순이어야 한다. 길이가 K인 수열 A가 A1 ≤ A2 ≤ ... ≤ AK-1 ≤ AK를 만족하면, 비내림차순이라고 한다. #define _CRT_SECURE_NO_WARNINGS #include #include using namespace std; int n, m, ans[10]; void go(int index, int pre) { if (index == m) { for (int i = 0; i < m; i++) printf("%d ", ans[i]); printf("\n"); return;..

Algorithm/BAEKJOON 2022.05.10

[ C / C++ ] 백준 15651 N과M(3)

문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도 된다. #define _CRT_SECURE_NO_WARNINGS #include #include using namespace std; int n, m, ans[10]; void go(int index) { if (index == m) { for (int i = 0; i < m; i++) printf("%d ", ans[i]); printf("\n"); return; } for (int i = 1; i

Algorithm/BAEKJOON 2022.05.09

[ C / C++ ] 백준 15650 N과M(2)

문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 고른 수열은 오름차순이어야 한다. #define _CRT_SECURE_NO_WARNINGS #include #include using namespace std; int n, m, visited[10], ans[10]; void go(int index, int pre) { if (index == m) { for (int i = 0; i < m; i++) printf("%d ", ans[i]); printf("\n"); return; } for (int i = pre + 1; i

Algorithm/BAEKJOON 2022.05.08

[ C / C++ ] 백준 15649 N과M(1)

문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 #define _CRT_SECURE_NO_WARNINGS #include #include using namespace std; int n, m, visited[10], ans[10]; void go(int index) { if (index == m) { for (int i = 0; i < m; i++) printf("%d ", ans[i]); return; } for (int i = 1; i

Algorithm/BAEKJOON 2022.05.07
반응형