QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#625543#8955. 排列yyyyxh100 ✓1ms4024kbC++14728b2024-10-09 19:43:432024-10-09 19:43:44

Judging History

This is the latest submission verdict.

  • [2024-10-09 19:43:44]
  • Judged
  • Verdict: 100
  • Time: 1ms
  • Memory: 4024kb
  • [2024-10-09 19:43:43]
  • Submitted

answer

#include<bits/stdc++.h>
#include"interactor.h"
#define uint64_t unsigned long long
#define uint32_t unsigned int
using namespace std;
mt19937_64 rng(random_device{}());

// concatenate two 32-bit integers to a 64-bit integer
uint64_t to64(uint32_t low,uint32_t high)
{
	return (uint64_t)low|(uint64_t)high<<32;
}

// Split a 64-bit integer to two 32-bit integers
void to32(uint64_t x,uint32_t &low,uint32_t &high)
{
	low=x;
	high=x>>32;
}

int guessb()
{
	for(int i=0;i<1;++i){
		uint32_t x0,x1,x3,x4,p1,p3,tmp;
		to32(rng(),x0,x1);
		to32(getperm(to64(x0,x1),0),x3,x4);
		to32(getperm(to64(x4,x1),0),p3,tmp);
		to32(getperm(to64(x3,x0),1),tmp,p1);
		if((p1^p3)!=(x1^x3)) return 0;
	}
	return 1;
}

詳細信息

Subtask #1:

score: 20
Accepted

Test #1:

score: 20
Accepted
time: 0ms
memory: 3996kb

input:

1
12824419990230211502 6284770797132110889

Test #2:

score: 20
Accepted
time: 0ms
memory: 3900kb

input:

1
12762739041067830349 11433405002106668439

Test #3:

score: 20
Accepted
time: 0ms
memory: 3900kb

input:

1
15392126947150969160 5793114871588882562

Test #4:

score: 20
Accepted
time: 0ms
memory: 4024kb

input:

1
5403124586151704163 13246826124085219982

Subtask #2:

score: 20
Accepted

Dependency #1:

100%
Accepted

Test #5:

score: 20
Accepted
time: 0ms
memory: 3744kb

input:

4
12858195064120798737 1991848486890255815

Test #6:

score: 20
Accepted
time: 0ms
memory: 3684kb

input:

4
4215194446341029033 532011002147104333

Test #7:

score: 20
Accepted
time: 0ms
memory: 3812kb

input:

4
14938454278325758444 7968986768611348785

Test #8:

score: 20
Accepted
time: 0ms
memory: 3736kb

input:

4
13774895601524998134 2915392846985319377

Subtask #3:

score: 60
Accepted

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Test #9:

score: 60
Accepted
time: 1ms
memory: 4024kb

input:

100
7388216795551052497 13719330562290875706

Test #10:

score: 60
Accepted
time: 1ms
memory: 3996kb

input:

100
10572899502107715125 745983082109321559

Test #11:

score: 60
Accepted
time: 1ms
memory: 3820kb

input:

100
17723176268630430996 12841950687728405137

Test #12:

score: 60
Accepted
time: 1ms
memory: 3748kb

input:

100
8945431235884021644 14776825312425534426

Test #13:

score: 60
Accepted
time: 0ms
memory: 3736kb

input:

100
6594131267363786116 9980162954088470562

Test #14:

score: 60
Accepted
time: 1ms
memory: 3788kb

input:

100
7119583533562698863 1761591402319344194

Test #15:

score: 60
Accepted
time: 1ms
memory: 3904kb

input:

100
2681022238916974379 8182351237431726406

Test #16:

score: 60
Accepted
time: 1ms
memory: 3816kb

input:

100
4978487412409460166 1633639412652822097

Test #17:

score: 60
Accepted
time: 1ms
memory: 3748kb

input:

100
9344137772339081966 9926540854104637874

Test #18:

score: 60
Accepted
time: 1ms
memory: 4024kb

input:

100
4240406447361230263 15758957544660231693

Test #19:

score: 60
Accepted
time: 1ms
memory: 4020kb

input:

100
16804675904569566283 10955664802868632378

Test #20:

score: 60
Accepted
time: 1ms
memory: 3724kb

input:

100
15399036156042107153 4908539726546110961