Eu criei um diagrama que mostra o que estou tentando realizar.
Na sequência de entrada, os nós estão o mais próximos possível. Mas eu quero que os nós brancos estejam o mais próximo possível dos respectivos nós pretos. As arestas entre os nós podem ser alongadas para tentar minimizar esse erro. Eles não podem ser encurtados. Portanto, 1 -> 2
pode ser não menos que 4, por exemplo.
Eu incluí uma solução possível. As arestas que foram alongadas são rotuladas. Observe que o alongamento de uma aresta muda todos os nós para a direita.
Esse eixo é contínuo, mas eu poderia discretizá-lo se isso ajudar.
Estou pensando que uma abordagem de programação dinâmica poderia funcionar aqui, mas não tenho certeza - nunca fui muito bom com o DP.
Qual é o algoritmo de execução mais rápida que pode resolver isso? Isso pode ser categorizado / reformulado como um problema conhecido?