Информация об изменениях

Сообщение Re[5]: Что вы всегда спрашиваете на собеседовании? от 12.06.2019 15:13

Изменено 12.06.2019 15:15 sergey2b

Re[5]: Что вы всегда спрашиваете на собеседовании?
Здравствуйте, De-Bill, Вы писали:

я запилил примерно вот такой алгоритм

char* arr1, char* arr2, char* arr3, size_t s_arr1, size_t s_arr2, size_t s_arr3

char code[256] = {0};


size_t maxIndex = std::max(s_arr1, s_arr2);
maxIndex = std::max(maxIndex, s_arr3);

for (size_t i = 0; i < maxIndex; i++) {
    if (i < s_arr1) { code[arr1[i]] != mask1; if (code[arr1[i]] == mask3) return  arr1[i]; }
    if (i < s_arr2) { code[arr2[i]] != mask2;  if (code[arr2[i]] == mask3) return  arr2[i]; }
    if (i < s_arr3) { code[arr3[i]] != mask3;  if (code[arr3[i]] == mask3) return  arr3[i]; }
}

return NOTFound;
Re[5]: Что вы всегда спрашиваете на собеседовании?
Здравствуйте, De-Bill, Вы писали:

я запилил примерно вот такой алгоритм

const char mask1 = 0x01;
const char mask2 = 0x02;
const char mask3 = 0x04;
const char maskEnd = 0x07;


char* arr1, char* arr2, char* arr3, size_t s_arr1, size_t s_arr2, size_t s_arr3

char code[256] = {0};


size_t maxIndex = std::max(s_arr1, s_arr2);
maxIndex = std::max(maxIndex, s_arr3);

for (size_t i = 0; i < maxIndex; i++) {
    if (i < s_arr1) { code[arr1[i]] != mask1; if (code[arr1[i]] == mask3) return  arr1[i]; }
    if (i < s_arr2) { code[arr2[i]] != mask2;  if (code[arr2[i]] == mask3) return  arr2[i]; }
    if (i < s_arr3) { code[arr3[i]] != mask3;  if (code[arr3[i]] == mask3) return  arr3[i]; }
}

return NOTFound;

char* arr1, char* arr2, char* arr3, size_t s_arr1, size_t s_arr2, size_t s_arr3

char code[256] = {0};


size_t maxIndex = std::max(s_arr1, s_arr2);
maxIndex = std::max(maxIndex, s_arr3);

for (size_t i = 0; i < maxIndex; i++) {
    if (i < s_arr1) { code[arr1[i]] != mask1; if (code[arr1[i]] == mask3) return  arr1[i]; }
    if (i < s_arr2) { code[arr2[i]] != mask2;  if (code[arr2[i]] == mask3) return  arr2[i]; }
    if (i < s_arr3) { code[arr3[i]] != mask3;  if (code[arr3[i]] == mask3) return  arr3[i]; }
}

return NOTFound;