
23.11.2009, 19:22
|
|
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
С нами:
10386906
Репутация:
599
|
|
Сообщение от razb
Делаешь вложенный цикл, с глубиной вложения равной количеству символов в пассе.
и отправляешь сорец на сайт говнокодру.
Код:
#include <iostream>
#include <string>
#include <vector>
using namespace std;
string passFromCounter(int counter, const vector<string>& letters);
void main()
{
vector<string> letters;
letters.push_back("a");
letters.push_back("b");
letters.push_back("c");
letters.push_back("d");
letters.push_back("e");
int counter = 0;
while (counter < 50){
cout << passFromCounter(counter++, letters) << endl;
}
system("pause");
}
string passFromCounter(int counter, const vector<string>& letters){
int num = letters.size();
int local_mutation_step = counter;
string pass;
do{
pass = letters.at((local_mutation_step % num)) + pass;
local_mutation_step = local_mutation_step / num - 1;
}while(local_mutation_step >= 0);
return pass;
}
Немножко математики спасают от тупого хардкодирования. Как это работает я уже не раз описывал тут. Как подобрать длину пароля - с 3х до 6ти букв - придумайте сами. Простая арифметика.
|
|
|