ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1014. Произведение цифр

Very simple solution in C++
Послано Andreas 20 дек 2013 03:57
#include <iostream>

long long getQforN(long long N)
{
    if (N == 0)
        return 10;
    else if (N == 1)
        return 1;

    long long Q = 0;
    long long p = 1;

    for(long long div = 9; div > 1; --div)
    {
        while( (N%div) == 0)
        {
            Q += p * div;
            p = p * 10;
            N /= div;
        }
    }

    return (N == 1) ? Q : -1;
}

int main(int argc, char **argv)
{
    long long N;
    std::cin >> N;
    std::cout << getQforN(N) << std::endl;
    return 0;
}

Edited by author 20.12.2013 03:59
Re: Very simple solution in C++
Послано Mano 19 сен 2015 18:02


Edited by author 19.09.2015 18:03
Re: Very simple solution in C++
Послано Umidbek(TUIT Urgench) 11 ноя 2016 11:54
Good idea. Thank you !!!