Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > батник


Автор: Борюсик 18.2.2014, 15:21
Здравствуйте. Не знаю в тему ли, но все же.
такая задача: в папке есть много папок. в подпапках может быть несколько или 1 мп3 файлов.
нужно раскидать их так, чтобы, допустим, появилось 4 папки (в них были только разные исполнители)
т.е. допустим в первой папке оригинал, микс1 и микс2 одного исполнителя а надо их раскидывать.
Чтобы в итоге появилось несколько плейлистов и не шло подряд 3 микса (почти одинаковых)


Алгоритм себе предстваляю, но реализовать не знаю как. Может быть батником, но как в нем сделать цикл,
просто не сталкивался.

Дополнительной опцией было бы неплохо еще и сделать так, чтобы если названия треков одного исполнителя разные,
то все эти треки падали только в первую папку. А миксы (они обозначаются в скобках) раскидывались.

Автор: nworm 18.2.2014, 15:25
Вручную, наверное, нужно раскидывать. Это же, на сколько я понимаю, нужно сделать только один раз.

Автор: _Y_ 25.2.2014, 09:28
Давайте посмотрим на простейший вариант. Надо, чтобы файлы, хранящиеся в каждой папке, не совпадали по признаку исполнителя.
  • Перебираем файлы последовательно на предмет, нет ли "соседей" от того же исполнителя.
  • Если есть, перебираем папки на предмет отсутствия данного исполнителя. Переносим файл в первую, где его нет.

Понятно, что алгоритм не оптимальный. Но Вы его раскритикуйте и это поможет уточнить задачу.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)