algorithm'''problem solve
[백준]2804-크로스워드 만들기(설명X)
JunHwa Park
2019. 8. 16. 01:33
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#include <iostream>
#include <cstring>
using namespace std;
int main() {
string A, B;
cin >> A >> B;
char** puzzle = new char* [B.length()];
for (int i = 0; i < B.length(); i++) {
puzzle[i] = new char[A.length() + 1];
memset(puzzle[i], '.', A.length());
puzzle[i][A.length()] = NULL;
}
bool find = false;
int i, j;
for (i = 0; i < A.length() && !find; i++)
for (j = 0; j < B.length() && !find; j++)
if (A[i] == B[j])
find = true;
i--; j--;
A.copy(puzzle[j], A.length());
for (int k = 0; k < B.length(); k++) {
puzzle[k][i] = B[k];
cout << puzzle[k] << endl;
delete[] puzzle[k];
}
delete[] puzzle;
}
|
cs |
두 단어 입력, 입력 크기로 동적할당.
A를 우선순위로 일치하는 알파벳 찾기
일치하는 알파벳의 위치 기반으로 배열에 복사 후 출력, 메모리 해제