Que questão legal Marcone, e a resolução do Marcelo também foi fera com o programinha , essa questão tem alguma fonte? Tipo caiu em alguma prova? Em 01/03/2015 18:04, "Marcelo Salhab Brogliato" <[email protected]> escreveu:
> Olá, Marcone, tudo bem? > > Estou supondo que "todos os algarismos foram usados" significa que todos > os seguintes algarismos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 aparecem. > > Queremos que a soma da quantidade de dígitos de x e x^2 seja igual a 10. > Como a quantidade de digitos de um número é igual a floor(log10(x)) + 1, > temos: > > floor(log10(x)) + 1 + floor(log10(x^2)) + 1 = 10 > floor(log10(x)) + floor(2*log10(x)) = 8 > > Como floor(2*log10(x)) só pode ser igual a 2*floor(log10(x)) ou > floor(log10(x)) + 1, temos dois possíveis casos: > > Caso 1: floor(2*log10(x)) = 2*floor(log10(x)) > > 3*floor(log10(x)) = 8 > floor(log10(x)) = 8/3 [impossível] > > Caso 2: floor(2*log10(x)) = 2*floor(log10(x)) + 1 > > 3*floor(log10(x)) = 7 > floor(log10(x)) = 7/3 [impossível] > > Portanto, não existe tal número. > > Só para confirmar, fiz o seguinte: Seja x um representante desses números. > Então: x^2 < 9876543210 => x < 99380 > Fiz um programa em python que testou todos os números inteiros até 99380 e > realmente nenhum satisfez tal propriedade. > > Se abrirmos mão do zero, isso é, considerar que todos os algarismos são 1, > 2, 3, ..., 9, temos que: floor(log10(x)) + floor(2*log10(x)) = 7 > Caso 1: 3*floor(log10(x)) = 7 [impossível] > Caso 2: 3*floor(log10(x)) = 6 => floor(log10(x)) = 2, e nossos candidatos > são os inteiros entre 100 e 999 que satisfazem floor(2*log10(x)) = > 2*floor(log10(x)) + 1. Assim, nossos candidatos são os inteiros que > satisfazem log10(x) >= 2.5, logo, x >= 10^(2.5) = 316,22. > > Portanto, nossos candidatos são os inteiros entre 317 e 999. Por enquanto, > nosso espaço de busca contém 683 números. > Mas ainda temos que tirar os que já tem dígitos repetidos. > > Como x^2 mod10 == (x mod10)^2 mod10, x não pode terminar em 1, 5 ou 6, > pois o último digito de x^2 seria igual ao último digito de x, violando a > regra de cada digito aparecer uma única vez. > > Assim, nosso espaço de busca são inteiros em 317 e 987, terminando em 2, > 3, 4, 7, 8, 9, sem dígitos repetidos. > > Tentei escrever x = 100a + 10b + c, calculei x^2, mas não consegui avançar. > > Fiz um programinha em Python pra testar esses números apenas. > As únicas soluções são: 567 e 854. > De fato, 567^2 = 321489 e 854^2 = 729316. > > Abraços, > Salhab > > > > 2015-03-01 13:45 GMT-03:00 marcone augusto araújo borges < > [email protected]>: > >> Para escrever um número natural e seu quadrado todos os algarismos foram >> usados, cada um deles uma única vez. >> Determine todos números que satisfazem tal propriedade. >> >> -- >> Esta mensagem foi verificada pelo sistema de antivírus e >> acredita-se estar livre de perigo. >> > > > -- > Esta mensagem foi verificada pelo sistema de antivírus e > acredita-se estar livre de perigo. -- Esta mensagem foi verificada pelo sistema de antiv�rus e acredita-se estar livre de perigo.

