๐ป
[๋ฐฑ์ค] ์๋ฃ๊ตฌ์กฐ - ์ฒ ๋ฒฝ ๋ณด์ ์๊ณ ๋ฆฌ์ฆ ๋ณธ๋ฌธ
[๋ฐฑ์ค] ์๋ฃ๊ตฌ์กฐ - ์ฒ ๋ฒฝ ๋ณด์ ์๊ณ ๋ฆฌ์ฆ
๋ํจ๋ 2020. 3. 18. 00:39๋ฌธ์
์ํฌ๋ ๊ณต๊ฐํค์ ๊ฐ์ธํค ํ ์์ผ๋ก ๋ณด์์ ์ ์งํ๋ ๊ฒ์ด ๋งค์ฐ ๋ถํธํ๋ค๊ณ ์๊ฐํ๋ค. ๊ทธ๋์ ์ํฌ๋ ๊ณต๊ฐํค๋ง์ ์ด์ฉํ๋ ์ํธํ ์ฒด๊ณ๋ฅผ ๊ฐ๋ฐํ๋ค. ์ด๋ฅผ "์ฒ ๋ฒฝ ๋ณด์ ์๊ณ ๋ฆฌ์ฆ"์ด๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ก ํ๋ค. ์๊ณ ๋ฆฌ์ฆ์ ๋ค์๊ณผ ๊ฐ๋ค.
ํ ๋จ์ด๋ 1~10๊ฐ์ ๋๋ฌธ์(A-Z)๋ค๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ด๋ค. ํ ๋ฌธ์ฅ์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋ ๋จ์ด๋ค๋ก ์ด๋ฃจ์ด์ก๋ค.
์ 1 ๊ณต๊ฐํค๋ ์ต๋ ํ ๋ฒ๋ง ์ฌ์ฉ๋ ๋จ์ด๋ค๋ก ๋์ด์๋ค.
์ 2 ๊ณต๊ฐํค๋ ์ 1 ๊ณต๊ฐํค์ ๋จ์ด๋ค์ ์ฌ๋ฐฐ์นํ์ฌ ๋ง๋ค์ด์ง๋ค.
ํ๋ฌธ(์ํธํ ๋์ง ์์ ๋ฌธ์ฅ)์ ์ 1 ๊ณต๊ฐํค์ ๊ฐ์ด ์ฌ๋ฌ ๋จ์ด๋ค๋ก ๋์ด์์ง๋ง, ์ 1 ๊ณต๊ฐํค์ ๋ค๋ฅด๊ฒ ๊ฐ ๋จ์ด๋ค์ ์ค๋ณต์ด ๊ฐ๋ฅํ๋ค.
์ํธ๋ฌธ(์ํธํ ๋ ๋ฌธ์ฅ)์ ํ๋ฌธ์ ์ 2 ๊ณต๊ฐํค๋ฅผ ๋ง๋ ๊ท์น์ ๋ฐ๋๋ก ์ฌ๋ฐฐ์นํ์ฌ ๋ง๋ค์ด์ง๋ค.
์ฃผ์ด์ง 2๊ฐ์ ๊ณต๊ฐํค์ ์ํธ๋ฌธ์ผ๋ก ํ๋ฌธ์ ๋ณต๊ตฌํ๋ผ.
์ ๋ ฅ
์ ๋ ฅ์ ์ฒซ ์ค์๋ ํ ์คํธ ์ผ์ด์ค์ ์๋ฅผ ์๋ฏธํ๋ ํ๋์ ์ ์๊ฐ ์ ๋ ฅ๋๋ค. ์ ์๋ 100์ ๋์ง ์๋๋ค.
๊ฐ ํ ์คํธ์ผ์ด์ค๋ง๋ค ์๋ ํญ๋ชฉ๋ค์ ํ ์ค์ฉ ์ ๋ ฅ๋ฐ๋๋ค.
- ํ ๋ฌธ์ฅ์ ๋จ์ด ์ n (1 ≤ n ≤ 1 000)
- ์ 1 ๊ณต๊ฐํค
- ์ 2 ๊ณต๊ฐํค
- ์ํธ๋ฌธ
๋ชจ๋ ๋จ์ด๋ค์ ์ต์ 1๊ฐ, ์ต๋ 10๊ฐ์ ๋๋ฌธ์๋ค๋ก ์ด๋ฃจ์ด์ ธ์๋ค.
์ถ๋ ฅ
๊ฐ ์ผ์ด์ค๋ง๋ค
- ์ํธ๋ฌธ์ ํด๋ ํ ํ๋ฌธ
์ ํ ์ค์ ์ค๋ ฅํ๋ค.
์์ ์ ๋ ฅ1
2
4
A B C D
D A B C
C B A P
3
SECURITY THROUGH OBSCURITY
OBSCURITY THROUGH SECURITY
TOMORROW ATTACK WE
์์ ์ถ๋ ฅ1
B A P C
WE ATTACK TOMORROW
์๊ฐ
๊ณต๊ฐํค์ ๋น๋ฐํค๋ผ๊ณ ์๊ฐํด์ public key, private key ๋ผ๊ณ ๋๊ณ ๋ณ์์ด๋ฆ์ bk,pk๋ผ๊ณ ํ๋๋ฐ ๋๋ค ๊ณต๊ฐํค์๋ค ใ ใ ใ
๋ญ ์ด๋ฆ์ ์ค์ํ ๊ฒ์ด ์๋๋๊น!
๊ณต๊ฐํค 2๊ฐ์ ๊ท์น๊ณผ ๋ฐ๋๋ก ์ํธ๋ฌธ์ ํด๋ ํ๋ฉด ๋๋ ๊ฒ์ด์๋๋ฐ,
๊ณต๊ฐํค1๊ณผ ๊ณต๊ฐํค2๊ฐ ๊ฐ์์ง๋ ๊ฐ์ผ๋์ i, j๋ฅผ ๊ฑฐ๊พธ๋ก j,i๋ก ํ์ฌ ๊ฐ์ ๋ฃ์ด์ฃผ๋ฉด ๋๋ ๋ฌธ์ ์๋ค.
์์ฑํ ์ฝ๋
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
#include <iostream>
using namespace std;
int t, n;
string bk[11], pk[11];
string en[11], de[11];
int idx;
void decode(){
for(int i=0; i<n; i++){
for(int j=0; j<n; j++){
if(pk[i] == bk[j]){
de[j] = en[i];
}
}
}
for(int i=0; i<n; i++){
cout << de[i] << " ";
}
cout << "\n";
}
int main(int argc, const char * argv[]) {
// insert code here...
ios::sync_with_stdio(false);
cin.tie(NULL);
cin >> t;
while(t--){
cin >> n;
for(int i=0; i<n; i++){
cin >> bk[i];
}
for(int i=0; i<n; i++){
cin >> pk[i];
}
for(int i=0; i<n; i++){
cin >> en[i];
}
decode();
}
return 0;
}
Colored by Color Scripter
|
'์๊ณ ๋ฆฌ์ฆ > ๋ฌธ์ ํ์ด Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ - 2156. ํฌ๋์ฃผ ์์ (0) | 2020.03.20 |
---|---|
[๋ฐฑ์ค] ๋ฐฑํธ๋ํน - 3967. ๋งค์ง ์คํ (0) | 2020.03.18 |
[๋ฐฑ์ค] ๋์ ํ๋ก๊ทธ๋๋ฐ - 1463. 1๋ก ๋ง๋ค๊ธฐ (0) | 2020.03.16 |
[๋ฐฑ์ค] ์๋ฎฌ๋ ์ด์ - 14891. ํฑ๋๋ฐํด (0) | 2020.03.15 |
[๋ฐฑ์ค] ๊ทธ๋ฆฌ๋์๊ณ ๋ฆฌ์ฆ - 2217.๋กํ (0) | 2020.03.14 |