Вам присваиваются цифры n
, и вы должны найти количество пар, чтобы между ними была как минимум одна цифра.
Eg. Для 5 чисел:
2837 2818 654 35 931
Ответ: 6
Здесь пара представляет (2837,2818), (2837,35), (2837,931), (2818,931), (654,35), (35,931)
Моя попытка. Я взял структуру, в которой хранится число в десятичном формате, число в виде его цифр в массиве и количество цифр в этом номере.. p >
Теперь для каждого числа я hashed это число в индексе привязки массива 0-9, а отмеченный со всеми следующими числами, если какая-либо их цифра уже присутствует.
Моя попытка O(n^2)
, которая медленная. Есть ли еще один алгоритм, который будет работать быстрее?