3263 - Apague Com Segurança

Mais um dia, mais um problema Ad Hoc...

Descrição

Solução

Não é necessário ligar e desligar os bits o número de vezes indicado pelo enunciado para obter uma resposta correta. Repare que se temos um número par de varreduras, vamos trocar 0 por 1 e depois 1 por 0 de novo, então número par acarreta sempre na string ser a mesma de antes. Já se tivermos um número ímpar de varreduras, é o equivalente a fazer uma varredura só. Com isso, só precisamos saber a paridade de N para sabermos quais valores deveriam estar nas posições. Basicamente

  • Se N for par, verificar se as strings de antes e depois são iguais;

  • Se N for ímpar, verificar se a string depois tem todos os bits trocados com a string de antes.

Last updated

Was this helpful?