Eu tenho um problema em minha mente, acho que é um problema de NPC, mas não sei como prová-lo.
Aqui está o problema:
Existem k ilhas em um lago muito grande e n pontões em forma de leque. Esses pontões têm o mesmo tamanho, mas têm direções iniciais diferentes e estão em diferentes posições originais no lago. Os pontões podem girar livremente em torno de seu centro de massa, sem nenhum custo associado à rotação.
Agora precisamos mover esses pontões para que todas as ilhas do lago possam ser conectadas. Podemos garantir que o número de pontões é suficiente para conectar todas as ilhas.
[Nota]: Não podemos reutilizar os pontões !!
A tarefa é encontrar a solução com a distância total mínima dos pontões móveis, a fim de conectar todas as ilhas. A distância do movimento de um pontão pode ser calculada como a distância entre a posição original do centro de massa e a sua posição implementada.
Para deixar claro, eu desenhei tal figura. Suponha que tenhamos 3 ilhas A, B e C. Elas estão localizadas em algum lugar do lago. E eu tenho vários pantoons em forma de leque. Agora, a solução é encontrar um somatório de distância móvel mínimo para conectar A, B e C, mostrado na parte inferior da figura. Espero que ajude a entender o problema. :)
Parece que o problema é do NPC, mas não sei para provar. Alguém pode me ajudar nisso?