#include #include #include #include #include #include using namespace std; #define BUFLEN 1024 #define a 1 #define z 26 int main(int argc, char *argv[]) { argc = argc; argv = argv; { char * buff = new char[100010]; while(true) { string key,message,result; scanf("%s", buff ); if ( buff[0] == '0' ) break; key = buff; scanf("%s", buff); message = buff; unsigned int kpos = 0; for( unsigned int i = 0; i < message.size(); i++ ) { char aux = ( key[kpos++] ) - ( 'A' - 1 ); kpos = ( kpos >= key.size() ? 0 : kpos ); char res = message[i] +aux; if ( res > 'Z' ) res -= 26; result += res; } result += "\n"; printf( result.c_str() ); } delete [] buff; } return 0; }