A cauda do cubo permanece inalterada (Lanqiao Cup Real Question)
Descrição do Problema
O final do cubo de alguns números é exatamente o próprio número (por exemplo, 1, 4, 5, 6, 9, 24, 25), calcule quantos inteiros positivos que atendem a esta característica dentro de 10000
Análise de ideias
O tópico é realmente muito simples, contanto que você entenda o método substr em String, use esse método para truncar a string e, em seguida, julgue o resultado.
Forneça novas ideias aqui
Por exemplo:
4x4x4 = 64 Divida 64 por 10 e pegue o restante para obter 4
24x24x24 = 13824 Divida 13824 por 100 e pegue o restante para obter 24
Ou seja, se
o número for menor que 10, divida por 10, se
o número for maior que 10 e menor que 100, então divida por 100, se
o número for maior que 100 e menor que 1000, então divida por 1000 .
Em resumo, o código é o seguinte
private static int count;
public static void main(String[] args) {
for(long i=1;i<=10000;i++) {
//i的立方比较大,这里用long型
if(i<10) {
if(i*i*i%10==i) count++;
}else if(i<100) {
if(i*i*i%100==i) count++;
}else if(i<1000) {
if(i*i*i%1000==i) count++;
}else if(i<10000) {
if(i*i*i%10000==i) count++;
}
}
System.out.println(count);
}
Resultado de saída: 36