Сообщение 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;