임 STL 알고리즘에 대한 CS106L의 연습을하고 있는데, random_shuffle을 사용하여 대체 암호화에 대해 질문합니다.Mono-alphabetic Subsitution STL을 사용하여 암호화, cs106l
질문은 입니다. random_shuffle을 사용하면 원본 문자열을 허용하고 임의의 Monoalphabetic Substitution Cipher로 암호화하는 MonoalphabeticSubstitutionEncrypt 함수를 구현하십시오. 처음에 의미
나는 A-Z 에 "AB..XYZ"그냥이라고 random_shuffle과이 있고 "KVDQ ... MSB" 같은 것을 생성하고 원래 문자열을 암호화 매핑을한다.
매핑을 사용하여 수행 할 수 있지만 해당 STL 알고리즘 만 사용해야합니다.
누구든지 아이디어가 있습니까? 고맙습니다!
나는이 방법으로 그것을하지만 STL 알고리즘의 힘을 사용하지 않는 메신저처럼 보인다
string MonoSubsitutionEncrypt(string line){
string original = "abcdefghijklmnopqrstuvwxyz";
string excrypt = original;
random_shuffle(encrypt.begin(), encrypt.end());
map<char, char> m;
for (int i = 0;i < original.length(); i++)
m.insert(make_pair(original[i],encrypt[i]));
string result;
for (int i = 0; i < line.length(); i++)
result += m[line[i]];
return result;
}
+1 나는 당신에게 과제를 준 교수가 마음에 듭니다. 그 교수가 STL 알고리즘을 홍보하고 있다는 것을 듣기 좋습니다 :) – Mahesh
보통 사람들은 숙제 태그를 "잊어 버렸습니다". :) – Wug