Cod sursa(job #2339401)

Utilizator Tudor06MusatTudor Tudor06 Data 8 februarie 2019 20:21:30
Problema Multiplu Scor 0
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <stdio.h>
#include <stdlib.h>


int main() {
    FILE *fin = fopen( "multiplu.in", "r" ), *fout = fopen( "multiplu.out", "w" );
    int cmmdc, b, ab, cf, aux, p10, sumcf;
    long long cmmmc, i;
    fscanf( fin, "%d%d", &cmmdc, &b );
    ab = cmmdc * b;
    while ( b > 0 ) {
        aux = cmmdc % b;
        cmmdc = b;
        b = aux;
    }
    cmmmc = ab / cmmdc;
    p10 = 1;
    cf = 0;
    sumcf = 0;
    while ( p10 <= cmmmc )
        sumcf += cmmmc / p10 % 10, p10 *= 10, cf ++;
    i = 2;
    while ( sumcf > cf ) {
        cmmmc = cmmmc / ( i - 1 ) * i;
        cf = 0;
        p10 = 1;
        sumcf = 0;
        while ( p10 <= cmmmc ) {
            sumcf += cmmmc / p10 % 10;
            p10 *= 10;
            cf ++;
        }
        i ++;
    }
    fprintf( fout, "%lld", cmmmc );
    fclose( fin );
    fclose( fout );
    return 0;
}