Нахождение основных факторов a
и b
мне кажется правильным.
Но логика в поиске общих факторов, вероятно, неверна.Попробуйте, например, с 24 и 40, и пошагово пройдитесь по части коллекции LIST3
.Как часто вы собираете фактор 2 в результат?Поскольку GCD равен 8, вы должны рассчитывать фактор 2 ровно три раза.Может быть сложно найти общее подмножество двух списков, в которых элементы могут встречаться более одного раза.
Может быть проще собрать простые факторы не в List
, но в Map
с помощьюглавный фактор как ключ и число как значение.Если вы раньше не использовали Map
, то абсолютно стоит узнать об этой структуре данных.
PS, когда вы правильно запустили программу, я бы рекомендовал опубликовать ее на https://codereview.stackexchange.com/ где мы можем дать вам несколько полезных советов по стилю кодирования, которые не подходят для Stackoverflow.