Problema A: Dígitos Divisores
Descargar problema: UNMSM-FISI 2011 Problema A
import java.io.*;
public class ProblemaA
{
public static void main( String args[] ) throws IOException
{
// Permitira leer datos ingresados
BufferedReader br = new BufferedReader( new InputStreamReader(
System.in ) );
// Cantidad de numeros que se analizaran
int cantNumeros = Integer.parseInt( br.readLine() );
// Almacena cada numero leido
int numero;
// Cantidad de digitos de 'numero' que pueden dividir a numero
int cantDivisores;
// Permitira trabajar con el numero sin modificar el original
int copia;
for( int i = 0; i < cantNumeros; i ++ )
{
numero = Integer.parseInt( br.readLine() );
copia = numero;
cantDivisores = 0;
// Procesamos cada digito que este más a la derecha
while( copia > 0 )
{
// Verificamos que el digito sea diferente de cero
// y si puede dividir a 'numero'
if( copia % 10 != 0 && numero % ( copia % 10 ) == 0 )
cantDivisores ++;
// Eliminamos el digito de más a la derecha
copia = copia / 10;
}
// Mostramos la salida
System.out.println( "Caso #" + (i + 1) + ": " + cantDivisores);
}
}
}
No hay comentarios:
Publicar un comentario