QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#417843 | #8416. Dzielniki [B] | Qingyu | Compile Error | / | / | C++23 | 3.2kb | 2024-05-22 23:25:46 | 2024-05-22 23:52:20 |
Judging History
你现在查看的是测评时间为 2024-05-22 23:52:20 的历史记录
- [2024-05-22 23:53:17]
- 管理员手动重测本题所有提交记录
- 测评结果:Compile Error
- 用时:0ms
- 内存:0kb
- [2024-05-22 23:52:20]
- 管理员手动重测该提交记录
- 测评结果:Compile Error
- 用时:0ms
- 内存:0kb
- [2024-05-22 23:25:46]
- 提交
answer
#include<bits/stdc++.h>
#include "dzilib.h"
//#pragma GCC optimize("Ofast")
//#pragma GCC optimize("trapv")
#define st first
#define nd second
#define pb push_back
#define pp pop_back
#define eb emplace_back
#define mp(a, b) make_pair(a, b)
#define all(x) (x).begin(), (x).end()
#define rev(x) reverse(all(x))
#define sor(x) sort(all(x))
#define sz(x) (int)(x).size()
#define rsz(x) resize(x)
using namespace std;
///~~~~~~~~~~~~~~~~~~~~~~~~~~
template <typename H, typename T>
ostream& operator<<(ostream& os, pair<H, T> m){
return os <<"("<< m.st<<", "<<m.nd<<")";
}
template <typename H>
ostream& operator<<(ostream& os, vector<H> V){
os<<"{";
for(int i=0; i<V.size(); i++){
if(i)os<<" ";
os<<V[i];
}
os<<"}";
return os;
}
void debug(){cerr<<"\n";}
template <typename H, typename... T>
void debug(H h, T... t) {cerr<<h; if (sizeof...(t)) cerr << ", "; debug(t...);}
#define deb(x...) cerr<<#x<<" = ";debug(x);
///~~~~~~~~~~~~~~~~~~~~~~~~~
typedef long long ll;
typedef long double ld;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef vector<int> vi;
typedef vector<pii > vii;
typedef vector<ll> vl;
typedef vector<pll> vll;
typedef string str;
#define BOOST ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
mt19937 rng(chrono::high_resolution_clock::now().time_since_epoch().count());
ll los(ll a, ll b){
if(a>b)swap(a, b);
unsigned long long t=rng();
t<<=31;
t+=rng();
return a+(t%(b-a+1));
}
int ile(ll a){
return __builtin_ctzll(a);
}
/*
g++ -O3 -static -o dzi dzi.cpp dzilib.cpp -std=c++20
*/
int main() {
//deb(ile(1), ile(6),ile(4));
//return 0;
int tt = GetT();
int Q = GetQ();
long long C = GetC();
long long N = GetN();
while(tt--) {
ll x=los(0, 10*N);
ll potm=1, potM=1024;
vector<ll> V(potM);
iota(all(V), 0);
vector<pair<ll, int>> ans;
while(true){
//x=((V[0]+potm-1)/potm)*potm;
deb(ans.size());
if((V[0]+x)%potm){
ll t=(V[0]+x)%potm;
x+=potm-t;
}
ans.pb({x, Ask(x)});
x++;
//deb(ans, potm, potM, V);
vector<ll> V2;
for(ll &i:V){
int a=ile(ans.back().st+i);
//assert((1ll<<a)>=potm);
if((1ll<<a)<potM && ans.back().nd%(a+1)){
}
else V2.pb(i);
}
V=V2;
V2.clear();
//deb(V, potm, potM);
bool b=1;
for(ll &i:V){
if((i-V[0])%(2*potm)){
b=0;
}
}
if(b){
for(ll &i:V){
if(i+potM<=N)V2.pb(i+potM);
}
for(ll &i:V2)V.pb(i);
V2.clear();
//deb(V);
potm*=2;
potM*=2;
for(ll &i:V){
b=1;
for(auto &j:ans){
int a=ile(j.st+i);
if((1ll<<a)<potM && j.nd%(a+1)){
b=0;
}
}
if(b)V2.pb(i);
}
V=V2;
//assert(V.size());
}
if(V.size()==1 && potM>=N)break;
}
Answer(V[0]);
}
return 0;
}
詳細信息
implementer.cpp:17:1: error: ‘uint64_t’ does not name a type 17 | uint64_t gcd_stein_impl( uint64_t x, uint64_t y ) { | ^~~~~~~~ implementer.cpp:4:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? 3 | #include <cstdlib> +++ |+#include <cstdint> 4 | implementer.cpp:27:1: error: ‘uint64_t’ does not name a type 27 | uint64_t gcd_stein( uint64_t x, uint64_t y ) { | ^~~~~~~~ implementer.cpp:27:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:37:1: error: ‘uint64_t’ does not name a type 37 | uint64_t mod_pow( uint64_t x, uint64_t y, uint64_t mod ) { | ^~~~~~~~ implementer.cpp:37:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:49:20: error: ‘uint64_t’ was not declared in this scope 49 | bool miller_rabin( uint64_t n, const std::initializer_list<uint64_t>& as ) { | ^~~~~~~~ implementer.cpp:49:20: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:49:32: error: expected primary-expression before ‘const’ 49 | bool miller_rabin( uint64_t n, const std::initializer_list<uint64_t>& as ) { | ^~~~~ implementer.cpp:49:74: error: expression list treated as compound expression in initializer [-fpermissive] 49 | bool miller_rabin( uint64_t n, const std::initializer_list<uint64_t>& as ) { | ^ implementer.cpp:67:16: error: ‘uint64_t’ was not declared in this scope 67 | bool is_prime( uint64_t n ) { | ^~~~~~~~ implementer.cpp:67:16: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:77:5: error: ‘uint64_t’ does not name a type 77 | uint64_t mod; | ^~~~~~~~ implementer.cpp:77:5: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:78:5: error: ‘uint64_t’ does not name a type 78 | uint64_t R; | ^~~~~~~~ implementer.cpp:78:5: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:80:25: error: expected ‘)’ before ‘n’ 80 | Montgomery( uint64_t n ) : mod(n), R(n) { | ~ ^~ | ) implementer.cpp:86:5: error: ‘uint64_t’ does not name a type 86 | uint64_t fma( uint64_t a, uint64_t b, uint64_t c ) const { | ^~~~~~~~ implementer.cpp:86:5: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:94:5: error: ‘uint64_t’ does not name a type 94 | uint64_t mul( uint64_t a, uint64_t b ) const { | ^~~~~~~~ implementer.cpp:94:5: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:101:1: error: ‘uint64_t’ does not name a type 101 | uint64_t pollard_rho( uint64_t n ) { | ^~~~~~~~ implementer.cpp:101:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:166:6: error: variable or field ‘factorize_impl’ declared void 166 | void factorize_impl( uint64_t n, std::vector<uint64_t>& ret ) { | ^~~~~~~~~~~~~~ implementer.cpp:166:22: error: ‘uint64_t’ was not declared in this scope 166 | void factorize_impl( uint64_t n, std::vector<uint64_t>& ret ) { | ^~~~~~~~ implementer.cpp:166:22: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:166:39: error: ‘vector’ is not a member of ‘std’ 166 | void factorize_impl( uint64_t n, std::vector<uint64_t>& ret ) { | ^~~~~~ implementer.cpp:4:1: note: ‘std::vector’ is defined in header ‘<vector>’; did you forget to ‘#include <vector>’? 3 | #include <cstdlib> +++ |+#include <vector> 4 | implementer.cpp:166:46: error: ‘uint64_t’ was not declared in this scope 166 | void factorize_impl( uint64_t n, std::vector<uint64_t>& ret ) { | ^~~~~~~~ implementer.cpp:166:46: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’? implementer.cpp:166:57: error: ‘ret’ was not declared in this scope 166 | void factorize_impl( uint64_t n, std::vector<uint64_t>& ret ) { | ^~~ implementer.cpp:176:6: error: ‘vector’ in namespace ‘std’ does not name a template type 176 | std::vector<uint64_t> factorize( uint64_t n ) { | ^~~~~~ implementer.cpp:176:1: note: ‘std::vector’ is defined in header ‘<vector>’; did you forget to ‘#include <vector>’? 176 | std::vector<uint64_t> factorize( uint64_t n ) { | ^~~ implementer.cpp: In function ‘long long int Ask(...