About CryptKicker2 ¶
í…�스트를 암호화하는 방법 중ì—� 보안ìƒ� 취약하긴 하지만 í�”하게 ì“°ì�´ëŠ” 방법으로 알파벳 글ìž�를 다른 글ìž�로 바꾸는 방법ì�´ 있다. 즉 알파벳ì�˜ ê°� 글ìž�ê°€ 다른 글ìž�로 치환ë�œë‹¤. 암호화ë�œ 것ì�„ 다시 ì›�래대로 ë�˜ë�Œë¦´ 수 ìžˆìœ¼ë ¤ë©´ ë‘� ê°œì�˜ 서로 다른 글ìž�ê°€ ê°™ì�€ 글ìž�로 치환ë�˜ì§€ 않아야 한다.
ì•Œë ¤ì§„ í�‰ë¬¸ 공격법(known plain text attack)ì�´ë�¼ëŠ” ê°•ë ¥í•œ 암호 ë¶„ì„� 방법ì�´ 있다. ì•Œë ¤ì§„ í�‰ë¬¸ 공격법ì�€ ìƒ�대방ì�´ 암호화했다는 것ì�„ ì•Œê³ ìžˆëŠ” 구문ì�´ë‚˜ 문장ì�„ 바탕으로 암호화ë�œ í…�스트를 관찰해서 ì�¸ì½”딩 방법ì�„ ìœ ì¶”í•˜ëŠ” 방법ì�´ë‹¤.
여러 줄ì�˜ í…�스트가 주어졌ì�„ 때 ê°™ì�€ ì¼€ì�´ìФì—�서는 ëª¨ë“ ì¤„ì—�서 ê°™ì�€ 치환 방법ì�„ ì‚¬ìš©í•œë‹¤ê³ ê°€ì •í•˜ê³ ê·¸ 중 한 줄ì�€ the quick brown fox jumps over the lazy dogë�¼ëŠ” í�‰ë¬¸ì�„ 암호화한 것ì�´ë�¼ëŠ” ì �ì�„ ì�´ìš©í•´ì„œ 암호화ë�œ í…�스트를 복호화하ë�¼.
Input ¶
첫번째 줄ì—�는 ì–‘ì�˜ ì •ìˆ˜ 하나만 들어있는ë�°, ì�´ ì •ìˆ˜ëŠ” 테스트 ì¼€ì�´ìФì�˜ 개수를 나타낸다. ê·¸ 다ì�Œ 줄ì�€ 빈 줄ì�´ë‹¤. 서로 다른 테스트 ì¼€ì�´ìŠ¤ëŠ” 빈 줄로 구분ë�œë‹¤.
ê°� ì¼€ì�´ìŠ¤ëŠ” 여러 줄로 구성ë�˜ëŠ”ë�°, 앞ì—�서 설명한 방법ì—� ë”°ë�¼ 암호화ë�œ í…�스트다. 암호화ë�œ ë‚´ìš©ì�€ 소문ìž�와 스페ì�´ìŠ¤ë§Œìœ¼ë¡œ 구성ë�˜ë©° 길ì�´ëŠ” 최대 80문ìž�로 ì œí•œë�œë‹¤. ìž…ë ¥ë�˜ëŠ” í…�스트는 100줄로 ì œí•œë�œë‹¤.
Output ¶
ê°� 테스트 ì¼€ì�´ìФì—� 대해 ê°� 줄ì�„ 복호화하여 표준 ì¶œë ¥ìœ¼ë¡œ ì¶œë ¥í•œë‹¤. 가능한 암호화 방법ì�´ ë‘� ê°œ ì�´ìƒ�있으면 ê·¸ 중 아무 결과나 ì¶œë ¥í•´ë�„ ë�œë‹¤. ë³µí˜¸í™”í• ìˆ˜ 없는 경우ì—�는 다ì�Œê³¼ ê°™ì�€ 결과를 ì¶œë ¥í•œë‹¤.
~cpp No solution.서로 다른 케�스 사��는 빈 줄� 한 개 집어넣는다.
Sample Input ¶
~cpp 1 vtz ud xnm xugm itr pyy jttk gmv xt otgm xt xnm puk ti xnm fprxq xnm ceuob lrtzv ita hegfd tsmr xnm ypwq ktj frtjrpgguvj otvxmdxd prm iev prmvx xnmq
Sample Output ¶
~cpp now is the time for all good men to come to the aid of the party the quick brown fox jumps over the lazy dog programming contests are fun arent they
í’€ì�´ ¶
| 작성� | 사용언어 | 개발시간 | 코드 |
| 문보창 | C++ | 3시간 | CryptKicker2/문보창 |









