728x90

🐣 알고리즘 삐약/💻 백준 삐약 106

26 삐약 : 백준 1018[브루트 포스 | C++]

https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net #include #include #include #include using namespace std; // 비교하고자 하는 문자열을 아예 저장을 한 후에 진행하였. 땨. string WB[8] = { "WBWBWBWB", "BWBWBWBW", "WBWBWBWB", "BWBWBWBW", "WBWBWBWB", "BWBWBWBW", "WBWBWBWB", "BWBWBWBW" }; string BW..

25 삐약 : 백준 7568[브루트 포스 | C++]

https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net #include #include using namespace std; int main() { int n; cin >> n; pair arr[50]; int rank[50]; for (int i = 0; i > x >> y; arr[i] = make_pair(x, y); } for (int i = 0; i < n; i++) { int cn..

24 삐약 : 백준 2231 [브루트 포스 | C++]

https://www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net #include using namespace std; int main() { int n; cin >> n; for (int i = 1; i < n; i++) { int sum = i; int temp = i; while (temp) { sum += temp % 10; temp /= 10; } if (sum == n) { cout

23 삐약 : 백준 2798 [브루트 포스 | C++]

https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 브루트 포스 단계에 진입하여땨! 학기중이라 아무것도 안하고 있다가 다시 백준 문제 풀기를 시작하여땨 #include using namespace std; int main() { int n, m; cin >> n >> m; int input_arr[100]; for (int i = 0; i > input; input_..

22 삐약 : 백준 1260 [C++]

https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net #include #include using namespace std; int line[1001][1001]; bool visited[1001]; int n, m, v; queue q; void dfs(int idx) { cout v; for (int i = 0; i > from >> to; line[fro..

21 삐약 : 백준 17478 [C++]

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 알고리즘 응용 때문에 연습을 핑계로 재귀관련된 문제를 계속 찾아보다가 웃긴 문제를 찾았다 !!! ㅋㅋㅋㅋㅋㅋㅋㅋㅋ https://www.acmicpc.net/problem/17478 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net 친절하게도 언더바로 어디까지가 재귀인지 구분을 해 주어서 구현하기 훨씬 수월했던 것 같다! #include #include using namespace std; string separate(int n) { string str; for (int i = 0; i < ..

20 삐약 : 백준 11729 [C++]

https://www.acmicpc.net/problem/11729 11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net #include #include using namespace std; void hanoi(int n, int start, int mid, int dest) { if (n == 1) printf("%d %d\n", start, dest); else { hanoi(n - 1, start, dest,mid); printf("%d %d\n", start, dest); hanoi(n - 1, ..

19 삐약 : 백준 2447 [C++]

https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net #include using namespace std; void star(int i, int j, int num) { if ((i / num) % 3 == 1 && (j / num) % 3 == 1) { cout num; for (int i = 0; i < num; i++) { for (int j = 0; j < num; j++) { star(i, j, num); } cout

18 삐약 : 백준 10870 [C++]

https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net #include using namespace std; int fibonachi(int n) { if (n == 0 ) return 0; if (n == 1) return 1; return fibonachi(n-2)+fibonachi(n-1); } int main() { int num; cin >> num; cout

728x90