Submission #7804995


Source Code Expand

#include "bits/stdc++.h"

using namespace std;

void solve()
{
    long n, k;
    cin >> n >> k;
    vector<long> as(n);
    vector<long> fs, cnt;
    for (long f = 1; f * f <= k; f++)
    {
        if (k % f == 0)
        {
            fs.push_back(f);
            if (f * f != k)
            {
                fs.push_back(k / f);
            }
        }
    }
    int m = fs.size();
    cnt.resize(m);
    sort(fs.begin(), fs.end());
    for (int i = 0; i < n; i++)
    {
        cin >> as[i];
        as[i] = __gcd(as[i], k);
        for (int j = 0; j < m; j++)
        {
            if (as[i] % fs[j] == 0)
            {
                cnt[j]++;
            }
        }
    }
    long ans = 0;
    for (auto x : as)
    {
        long y = k / x;
        int i = distance(fs.begin(), lower_bound(fs.begin(), fs.end(), y));
        ans += cnt[i] - (x % y == 0);
    }
    cout << ans / 2 << endl;
}

int main()
{
    solve();
    return 0;
}

Submission Info

Submission Time
Task C - ロト2
User sifi_border
Language C++14 (GCC 5.4.1)
Score 0
Code Size 997 Byte
Status TLE
Exec Time 2103 ms
Memory 1792 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 400
Status
AC × 3
AC × 22
TLE × 3
Set Name Test Cases
Sample 00_example_01.txt, 00_example_02.txt, 00_example_03.txt
All 00_example_01.txt, 00_example_02.txt, 00_example_03.txt, 10_random_01.txt, 10_random_02.txt, 10_random_03.txt, 10_random_04.txt, 10_random_05.txt, 20_max_01.txt, 20_max_02.txt, 20_max_03.txt, 20_max_04.txt, 20_max_05.txt, 30_overflow_01.txt, 30_overflow_02.txt, 40_dmax_01.txt, 40_dmax_02.txt, 40_dmax_03.txt, 50_prime_01.txt, 50_prime_02.txt, 50_prime_03.txt, 60_prime_pow_01.txt, 60_prime_pow_02.txt, 60_prime_pow_03.txt, 70_one_01.txt
Case Name Status Exec Time Memory
00_example_01.txt AC 1 ms 256 KB
00_example_02.txt AC 1 ms 256 KB
00_example_03.txt AC 1 ms 256 KB
10_random_01.txt AC 1 ms 256 KB
10_random_02.txt AC 2 ms 256 KB
10_random_03.txt AC 1 ms 256 KB
10_random_04.txt AC 1 ms 256 KB
10_random_05.txt AC 1 ms 256 KB
20_max_01.txt AC 97 ms 1792 KB
20_max_02.txt AC 80 ms 1792 KB
20_max_03.txt AC 115 ms 1792 KB
20_max_04.txt AC 85 ms 1792 KB
20_max_05.txt AC 146 ms 1792 KB
30_overflow_01.txt AC 103 ms 1792 KB
30_overflow_02.txt AC 104 ms 1792 KB
40_dmax_01.txt TLE 2103 ms 1792 KB
40_dmax_02.txt TLE 2103 ms 1792 KB
40_dmax_03.txt TLE 2103 ms 1792 KB
50_prime_01.txt AC 83 ms 1792 KB
50_prime_02.txt AC 92 ms 1792 KB
50_prime_03.txt AC 116 ms 1792 KB
60_prime_pow_01.txt AC 161 ms 1792 KB
60_prime_pow_02.txt AC 109 ms 1792 KB
60_prime_pow_03.txt AC 104 ms 1792 KB
70_one_01.txt AC 65 ms 1792 KB