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

Обсуждение задачи 2070. Интересные числа

Неинтересные только числа которые представляют собой простое число в степени равной простому числу минус один
Послано Mahilewets 1 авг 2017 00:39
Re: Неинтересные только числа которые представляют собой простое число в степени равной простому числу минус один
Послано INSOOP 22 мар 2019 15:29
My solutions: 0.015

# include <bits/stdc++.h>

using namespace std;

typedef long long ll;

int main()
{
    ll l, r, kol, i, j, N = 1e6;
    cin >> l >> r;
    kol = r - l + 1;

    ///Resheto
    vector<char> prime (N+1, true);
    prime[0] = prime[1] = false;
    for (ll i=2; i<=N; ++i)
        if (prime[i])
            if (i * 1ll * i <= N)
                for (ll j=i*i; j<=N; j+=i)
                    prime[j] = false;

    ll t, p, s, kol2 = 0;

    for(i = 2; i <= min(N, r); i++)
    {
        if(prime[i])
        {
            s = i * i;
            t = 1;
            p = 0;
            while(1)
            {
                t *= s;
                p += 2;
                if(t > r)
                    break;
                if(t >= l)
                {
                    if(prime[p + 1])
                        kol2++;
                }
            }
        }
    }

    cout << kol - kol2;
    return 0;
}
Re: Неинтересные только числа которые представляют собой простое число в степени равной простому числу минус один
Delete this please