코딩하기 좋은날
백준 9322 철벽 보안 알고리즘 본문
반응형
문제와 채점은 위 사이트에서 확인 하실 수 있습니다.
이 문제는 1 공개키 2공개키 암호문 해독문 4개의 스트링을 각각 선언해서 2공개키의 값과 1공개키의 값이 같은 지점을 찾아
인덱스가 어디에서 어디로 옮겨졌는지에 따라 암호문의 값을 해독문의 값으로 옮겼습니다.
스트링을 2차원 배열로 했으면 더 짧게 가능 했을것 같습니다.
#include <iostream>
#include <string>
using namespace std;
int main(void) {
int T,N; // T는 테스트 케이스 N은 한문장의 단어 수
cin >> T;
while(T) {
cin >>N;
string str1[N]; //제1 공개키 저장
string str2[N]; //제 2 공개키 저장
string str3[N]; //암호문 저장
string str4[N]; //해독문 저장
int n = 0;
int j = 0;
int k = 0;
for(int i = 0; i < N; i++) {
cin>>str1[n++];
}
for(int i = 0; i < N; i++) {
cin>>str2[j++];
}
for(int i = 0; i < N; i++) {
cin>>str3[k++];
}
for(int i = 0; i < N; i++)
for(int j = 0; j < N; j++)
if(str2[i] == str1[j]) //2공개키와 1공개키의 값이 같으면
str4[j] = str3[i]; // i번째 인덱스가 j번째 인덱스로 간다고 생각하고 해독문을 채운다.
for(auto n : str4)
cout<<n<<" ";
cout<<"\n";
T--;
}
return 0;
}
반응형
'백준(Baekjoon) 문제' 카테고리의 다른 글
백준 3052 나머지 (0) | 2019.01.14 |
---|---|
백준 2953 나는 요리사다. (0) | 2019.01.14 |
백준 2910 빈도 정렬 (0) | 2019.01.14 |
백준 7785 회사에 있는 사람 (0) | 2019.01.13 |
백준 1620 나는야 포켓몬 마스터 이다솜 (0) | 2019.01.13 |