Идёшь по массиву дат и пихаешь их в хештаблицу (ассоциативный массив)
Структура его должна быть примерно такой:
{
[2020] => {
[11] => [1],
[12] => [1, 2, 3]
},
[2021] => {
[1] => [1]
}
}
Потом проходишься по ключам этого ассоциативного массива и собираешь свою строку.
1 Ноября и 1,2,3 Декабря 2020 года, и 1 января 2021 года.