В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
nina19862
nina19862
17.02.2021 02:05 •  Информатика

Множители у айрата есть число n, представленное в виде разложения на m простых множителей pi, то есть n = p1·p2··pm. айрат получил секретную информацию, что произведение всех делителей n по модулю 109 + 7 — пароль от секретной базы данных. теперь осталось только вычислить это значение. входные данные в первой строке входных данных находится число m(1 ≤ m ≤ 200 000) — количество чисел в разложении числа n на простые множители. во второй строке записаны m простых чисел pi (2 ≤ pi ≤ 200 000). выходные данные выведите одно число — произведение всех делителей числа n, вычисленное по модулю 109 + 7. примеры тестов входные данные 2 2 3 выходные данные 36 входные данные 3 2 3 2 выходные данные 1728 примечание в первом примере n = 2·3 = 6. делителями числа 6 являются 1, 2, 3 и 6, их произведение 1·2·3·6 = 36. во втором примере 2·3·2 = 12. делители числа 12 — 1, 2, 3, 4, 6 и 12. 1·2·3·4·6·12 = 1728. реализовать на с++

Показать ответ
Ответ:
MariaVay000
MariaVay000
20.09.2020 11:31
#include <stdio.h>

using namespace std;

int main() {
    int m, a;
    scanf("%d", &m);
    int n = 1;
    for (int i = 0; i < m; i++) {
        scanf("%d", &a);
        n *= a;
    }
    long long ans = 1;
    for (int i = 2; i <= n; i++) {
        if (n % i == 0) {
            ans = ans * i % 1000000007;
        }
    }
    printf("%d", ans);
    return 0;
}
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота