제출 #1335780

#제출 시각아이디문제언어결과실행 시간메모리
1335780monaxiaLanguages (IOI10_languages)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>

// #pragma GCC optimize("O3,unroll-loops")
// #pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#define pb push_back
#define ppb pop_back
#define fr first
#define sc second
#define all(v) v.begin(), v.end()
#define vektor vector
#define ordered_set tree<pair <ll, ll>, null_type, less<pair <ll, ll>>, rb_tree_tag, tree_order_statistics_node_update>

using namespace std;
using namespace __gnu_pbds; 

using ll = long long;
using ull = unsigned long long;
using ld = long double;

constexpr ull Mod = 1e9 + 7;
constexpr ull sqr = 708;
constexpr ld EPS = 1e-12L;

mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());
ll random(ll l, ll r) {if (l > r) return -1; return uniform_int_distribution<ll>(l, r)(rng);}

#include "grader.h"

int a[100][100], mark[100];
gp_hash_table <vector <int>, int> check;
// int language(int L){return random(0, 55);}

void excerpt(int E[100]){
    vector <int> e;
    
    for(int i = 0; i < 100; i ++) e.pb(E[i]);
    sort(all(e));
    
    if(check[e] != 0){
      language(check[e]);
      return;
    }
    
    int num = 0;
    mark[0] = 1;
    
    while(mark[num]) num = random(0, 55);
    
    int ans = language(num);
    
    mark[ans] = 1;
    
    check[e] = ans;
}

컴파일 시 표준 에러 (stderr) 메시지

/usr/bin/ld: /tmp/ccEySU8Y.o: in function `__gnu_pbds::detail::gp_ht_map<std::vector<int, std::allocator<int> >, int, std::tr1::hash<std::vector<int, std::allocator<int> > >, std::equal_to<std::vector<int, std::allocator<int> > >, std::allocator<char>, false, __gnu_pbds::direct_mask_range_hashing<unsigned long>, __gnu_pbds::linear_probe_fn<unsigned long>, __gnu_pbds::hash_standard_resize_policy<__gnu_pbds::hash_exponential_size_policy<unsigned long>, __gnu_pbds::hash_load_check_resize_trigger<false, unsigned long>, false, unsigned long> >::find_ins_pos(std::vector<int, std::allocator<int> > const&, std::tr1::integral_constant<int, 0>) [clone .isra.0]':
lang.cpp:(.text+0x4e7): undefined reference to `std::tr1::hash<std::vector<int, std::allocator<int> > >::operator()(std::vector<int, std::allocator<int> >) const'
/usr/bin/ld: /tmp/ccEySU8Y.o: in function `__gnu_pbds::detail::gp_ht_map<std::vector<int, std::allocator<int> >, int, std::tr1::hash<std::vector<int, std::allocator<int> > >, std::equal_to<std::vector<int, std::allocator<int> > >, std::allocator<char>, false, __gnu_pbds::direct_mask_range_hashing<unsigned long>, __gnu_pbds::linear_probe_fn<unsigned long>, __gnu_pbds::hash_standard_resize_policy<__gnu_pbds::hash_exponential_size_policy<unsigned long>, __gnu_pbds::hash_load_check_resize_trigger<false, unsigned long>, false, unsigned long> >::resize_imp(unsigned long)':
lang.cpp:(.text._ZN10__gnu_pbds6detail9gp_ht_mapISt6vectorIiSaIiEEiNSt3tr14hashIS4_EESt8equal_toIS4_ESaIcELb0ENS_25direct_mask_range_hashingImEENS_15linear_probe_fnImEENS_27hash_standard_resize_policyINS_28hash_exponential_size_policyImEENS_30hash_load_check_resize_triggerILb0EmEELb0EmEEE10resize_impEm[_ZN10__gnu_pbds6detail9gp_ht_mapISt6vectorIiSaIiEEiNSt3tr14hashIS4_EESt8equal_toIS4_ESaIcELb0ENS_25direct_mask_range_hashingImEENS_15linear_probe_fnImEENS_27hash_standard_resize_policyINS_28hash_exponential_size_policyImEENS_30hash_load_check_resize_triggerILb0EmEELb0EmEEE10resize_impEm]+0x1c7): undefined reference to `std::tr1::hash<std::vector<int, std::allocator<int> > >::operator()(std::vector<int, std::allocator<int> >) const'
collect2: error: ld returned 1 exit status