QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#853963#9909. 阿尔塔尔 2juan_12320 114ms4324kbC++141.6kb2025-01-11 20:36:002025-01-11 20:36:01

Judging History

你现在查看的是最新测评结果

  • [2025-01-11 20:36:01]
  • 评测
  • 测评结果:20
  • 用时:114ms
  • 内存:4324kb
  • [2025-01-11 20:36:00]
  • 提交

answer

//仿佛只要伸手 就能触摸
#include<bits/stdc++.h>
#include "altar.h"
using namespace std;
int nxt[305][305];
int to[305];
vector<pair<int,int> >e;
int fa[305],ok[305];
int find(int x){
	if(fa[x] == x)return x;
	return fa[x] = find(fa[x]);
}
int altar(int n){
	e.clear();
	for(int i =0;i<=n;i++)to[i] = 0,fa[i] = i,ok[i] = 0;
	srand(time(0));
	for(int i =0;i<=n;i++)for(int j =0;j<=n;j++)nxt[i][j] = -1;
	vector<int>p;
	for(int i = 1;i<=n;i++)p.push_back(i);
	random_shuffle(p.begin(),p.end());
	while(p.size()>=2){
		int x = p.back();p.pop_back();int y = p.back();p.pop_back();
		int cc = sense(x,y);
		nxt[x][y] = cc,nxt[y][x] = cc^1;
		if(cc){
			to[y] = x;
			p.push_back(x);
		}else{
			to[x] = y;
			p.push_back(y);
		}
	}
	int x = p[0];p.clear();
	for(int i = 1;i<=n;i++)if(x!=i and !nxt[i][x])p.push_back(i);
	random_shuffle(p.begin(),p.end());
	for(auto y:p){
		if(sense(y,x)){
			to[x] = y;break;
		}
	}
	if(!to[x])return x;
	
	//现在我们有一个基环森林,在每个连通块上找出来一个环
	for(int i = 1;i<=n;i++)e.push_back({i,to[i]});
//	for(int i = 1;i<=n;i++)cout << " " << i << " " << to[i] << endl;
	random_shuffle(e.begin(),e.end());
	vector<int>S;
	for(int i = 0;i<e.size();i++){
		int x = e[i].first,y = e[i].second;
	//	assert(!ok[find(x)]);assert(!ok[find(y)]);
		if(find(x) == find(y)){
			S.push_back(x);
			continue;
		}
		fa[find(x)] = find(y);
	}
	
	int res = S[0];
	for(int i = 1;i<S.size();i++)if(sense(S[i],res))res = S[i];
	return res;
}
/*
g++ grader.cpp qoj9909.cpp -o qwq  -O2 -std=c++14 -lm
*/

詳細信息

Subtask #1:

score: 10
Accepted

Test #1:

score: 10
Accepted
time: 114ms
memory: 4060kb

input:

300
$NE[`FN8(GUPU5JN"+-?S9BD8AV29KPSV*_J33@A;BIC>PLD;?
.O`)V,Q^WPM3M4>+@W$GJ`Y_.Z`%'?1?VO645/Y";"E_RDLBU#
,V\*=ZO>6J0[,*9XVA[<<O\RJN9]B`&^4-`QV(&Z=$T7(05"2!
(EOLI9X](E0V.HG`B&5QBMXJ-<8;ITS5_FL>S-BEC[FUH9?J'"
AH#FYE-:C9OC>N*WMNIHYIDSSG=2Z2:0/B/B=-]QBJ^61]LG_!
CL92HRY]<1P<VF$>Q>;<F*1>)DH'5$VA3>A&1'0;Y...

output:

Accepted.
90315
u2930hioewfbjkadvhhi4t

result:

ok Perfect. 301.050000

Subtask #2:

score: 10
Accepted

Test #2:

score: 10
Accepted
time: 88ms
memory: 4060kb

input:

300
`XP``88`X:`X>Y`]@X^P`](^P[WY^`^V^P`NX`[L`@P```\^^@
6TTR>ADPJM9+/E@WNROG<_$_86,9W_OY?X`C\0Z&`HX^\X>]U/
):ZQ'QR&1'-&(S/\W18D.`"`LK&):>6=P\?R^HEC>TZ]VD//;(
X]]@0Y[\/\_K$\H><O`ZG`I`6V'GPP,O`^P^_4@^`\^``>00P$
37/M$=="F&4RBMTO.UV=T@Q`K;"378&X\O8=`*LY`]O@`KDDW"
.0(X$/_GSCLY1_:X'\;OZ0Y@6NB:\\C\>`<O`E8]@...

output:

Accepted.
137184
u2930hioewfbjkadvhhi4t

result:

ok Perfect. 457.280000

Test #3:

score: 10
Accepted
time: 112ms
memory: 4136kb

input:

300
5OE?M21ZC3S/R%Q3L;V2'%M1ZRB"0^#J%_.A5(KTQ-=UM-1-`&
_73M@`3L&)W\.!1Y-T!+?B_&1'=BZBPDGGHWT*!=I]^*/T)Y90
%HX#N%@(=R.Q,)2R$RCRSAHG1+FBU7?&&?PI)/^;\1/]3$/]T'
%!\M8T)7:0U_*E^GG.@C,!0=\MR4<61>D$<<5W<P,%_N,!Z<1"
\?+TT5<N#+&YOV77_-5*"C8B(]9=Q)1V!4?GV!R%,36/7Q:&$!
1D]6'2EO3S)%B`1.4GJ48,&Q09S:[T\\"L\(KS'>^...

output:

Accepted.
138335
u2930hioewfbjkadvhhi4t

result:

ok Perfect. 461.116667

Subtask #3:

score: 0
Wrong Answer

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Test #4:

score: 0
Wrong Answer
time: 2ms
memory: 4324kb

input:

300
.&(6P[JSS(#6@H4\H?I8>56PGMHQ9OLB`X%0&SZ`[0\Z9GSXT/
GCDK8^5:Z$BKPRJ^40UL/CK(4W49%WVQ`:CH#Z]@^H^=-4Z\:(
@R@```_]`\@`X\_`\0`X8@XP```OO`_Z`>Z<L__`_``@_Z^^N(
III[6,67_1I[<-;`5$^KDI[RE^%'B>.]@GIJ1/`(N:0(S5_=W"
555^KF+,@)5^.'N@[B?V25^9S?#DQO'_04U5)H`LXMH$:+@0\!
+/K@^TFF0'K_/HW0^1P[IK?.:0BR=8$`P*?+ET`X@...

output:

Wrong Answer.

result:

wrong answer Wrong Answer.