Submission #72180535


Source Code Expand

#include <algorithm>
#include <array>
#include <bitset>
#include <cassert>
#include <chrono>
#include <climits>
#include <cmath>
#include <complex>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <iostream>
#include <iterator>
#include <limits>
#include <list>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <tuple>
#include <typeinfo>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>
using ll = long long;
using ld = long double;
using namespace std;
#define endl "\n"
#define ff first
#define ss second
#define forn(i,n) for(int i=0;i<n;i++)
#define dbgv(v) cout<<#v<<" "<<v<<endl
#define dbga(a,n) forn(i,n-1) {cout<<a[i]<<' ';} cout<<a[n-1]<<'\n';
#define all(v) (v).begin(), (v).end()
const ll N = 1e6 + 5, mod = 1e9 + 7;
ll fact[N], modinv[N];
ll fastpow(ll n, ll m) {
    int ret = 1;
    while (m) {
        if (m & 1)
            (ret *= n) %= mod;
        (n *= n) %= mod;
        m /= 2;
    }
    return ret;
}
void pre() {
    fact[0] = 1;
    for (int i = 1; i < N; i++)
        fact[i] = i * fact[i - 1] % mod;
    modinv[N - 1] = fastpow(fact[N - 1], mod - 2);
    for (int i = N - 2; i >= 0; i--)
        modinv[i] = (i + 1) * modinv[i + 1] % mod;
}
ll ncr(ll n, ll r) {
    return fact[n] * modinv[n - r] % mod * modinv[r] % mod;
}
void dfs(int i,int p, vector<vector<int>>&adj){
	for(auto c:adj[i]){
		dfs(c,i,adj);
	}
}
void solve(){
    int n;
    cin>>n;
    vector<ll> a(n);
    map<ll,vector<int>> p7,p5,p3;
    forn(i,n){
        cin>>a[i];
        if(a[i]%7==0) p7[a[i]/7].push_back(i);
        if(a[i]%5==0) p5[a[i]/5].push_back(i);
        if(a[i]%3==0) p3[a[i]/3].push_back(i);
    }
    ll ans=0;
    for(auto&[g,js]:p5){
        if(!p7.count(g)||!p3.count(g)) continue;
        auto&is=p7[g];
        auto&ks=p3[g];
        ll ci=is.size(),ck=ks.size();
        for(int j:js){
            ll il=lower_bound(all(is),j)-is.begin();
            ll ir=ci-il;
            ll kl=lower_bound(all(ks),j)-ks.begin();
            ll kr=ck-kl;
            ans+=il*kl+ir*kr;
        }
    }
    cout<<ans<<endl;
}
int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int T = 1;
    while(T--){
        solve();
    }
    return 0;
}

Submission Info

Submission Time
Task D - Kadomatsu Subsequence
User SummitDevil
Language C++23 (GCC 15.2.0)
Score 425
Code Size 2589 Byte
Status AC
Exec Time 214 ms
Memory 27940 KiB

Compile Error

./Main.cpp: In function 'void dfs(int, int, std::vector<std::vector<int> >&)':
./Main.cpp:71:20: warning: unused parameter 'p' [-Wunused-parameter]
   71 | void dfs(int i,int p, vector<vector<int>>&adj){
      |                ~~~~^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 425 / 425
Status
AC × 3
AC × 33
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 3544 KiB
sample_02.txt AC 1 ms 3448 KiB
sample_03.txt AC 1 ms 3644 KiB
test_01.txt AC 1 ms 3404 KiB
test_02.txt AC 1 ms 3644 KiB
test_03.txt AC 1 ms 3624 KiB
test_04.txt AC 1 ms 3612 KiB
test_05.txt AC 22 ms 9632 KiB
test_06.txt AC 21 ms 9508 KiB
test_07.txt AC 21 ms 9536 KiB
test_08.txt AC 21 ms 9632 KiB
test_09.txt AC 22 ms 9528 KiB
test_10.txt AC 22 ms 9652 KiB
test_11.txt AC 20 ms 8744 KiB
test_12.txt AC 29 ms 7476 KiB
test_13.txt AC 19 ms 7532 KiB
test_14.txt AC 25 ms 8568 KiB
test_15.txt AC 28 ms 8944 KiB
test_16.txt AC 30 ms 8308 KiB
test_17.txt AC 25 ms 7776 KiB
test_18.txt AC 35 ms 8484 KiB
test_19.txt AC 28 ms 8272 KiB
test_20.txt AC 90 ms 10476 KiB
test_21.txt AC 57 ms 8940 KiB
test_22.txt AC 93 ms 10592 KiB
test_23.txt AC 185 ms 21356 KiB
test_24.txt AC 214 ms 24048 KiB
test_25.txt AC 182 ms 20128 KiB
test_26.txt AC 136 ms 27744 KiB
test_27.txt AC 134 ms 27888 KiB
test_28.txt AC 137 ms 27940 KiB
test_29.txt AC 134 ms 27864 KiB
test_30.txt AC 140 ms 27916 KiB