Eu preciso de alguma ajuda com este algoritmo C ++
Estou tentando resolver um problema de algoritmo, mas não consigo encontrar a solução ...
A tarefa é produzir o menor número de etapas necessárias para alcançar uma determinada configuração de lâmpadas.
Existem duas linhas de lâmpadas e N <10000 colunas, da seguinte forma:
11011
11011
ou
11101101111000101010
01111101100000010100
Estas lâmpadas podem ser "on" (1) ou "off" (0).
Começando de tudo desligado (0), o programa tem que mostrar o número de passos necessários para alcançar a configuração desejada.
Um passo pode ser:
alternar uma lâmpadaalternar duas lâmpadas, uma acima da outra (na mesma coluna)alternar n lâmpadas consecutivas na mesma linha, pode ser a linha inteira, pode ser apenas duas (ou uma como explicado acima)Eu imaginei que o algoritmo deveria simplesmente contar o número de passos necessários para desligar as luzes completamente, e isso seria o mesmo que na ordem "certa". Além disso, o meu palpite era tentar encontrar "buracos", ou seja, sequências de mais de uma lâmpada com o mesmo estado, e depois trocá-las. Mas fica complicado desde que há duas linhas ...
No entanto, eu estava completamente perdido depois desse ponto e preciso de ajuda ...