Problema do quadrado gêmeo das partes

From AdonaiMedrado.Pro.Br
Revision as of 20:56, 22 February 2009 by Adonaimedrado (Talk | contribs) (Dificuldade única)

Jump to: navigation, search

Dificuldade única

Existem alguns números que têm uma propriedade bastante interessante, observe:

100
10+0=10 10*10=100
2025
20+25=45 45*45=2025

3025;

30+25=55 55*55=3025
9801
98+1=99 99*99=9801
10000
100+0=100 100*100=10000
88209
88+209=297 297*297=88209
494209
494+209=703 703*703=494209
998001
998+1=999 999*999=998001

Conheça mais sobre esta propriedade conhecida como número de Kaprekar.

Cada um dos números apresentados tiveram seus algarismos decompostos de tal forma que a soma das partes elevado ao quadrado era igual ao número original.

Faça um programa, utilizando a linguagem C, capaz de ler e identificar se um determinado número n (1<=n<=100.000.000) possui ou não esta propriedade. Caso positivo, o programa deverá retornar uma única linha com o valor 1, caso contrário deve-se retornar uma linha com valor 0.

Considere que n sempre será informado com um valor válido.

Exemplo 1

Entrada

60481729

Saída

1

Exemplo 2

Entrada

60481728

Saída

0

Exemplo 3

Entrada

300814336

Saída

1

Exemplo 4

Entrada

88200

Saída

0