提交记录 3782


用户 题目 状态 得分 用时 内存 语言 代码长度
DOlaBMOon noi18b. 【NOI2018】冒泡排序 Runtime Error 44 1 s 163856 KB C++ 938 B
提交时间 评测时间
2018-07-18 17:34:43 2020-07-31 21:38:16
#include<algorithm>
#include<cstring>
#include<cstdio>
#include<cmath>

using namespace std;

const int N=20;
const int MX=(1<<N)+10;

int n,S,p[N];

int dp[2][N][MX];

bool check(int s,int p,int x)
{
	if((s>>x)&1)
		return false;
	int t=(1<<x)-1;
	if(p>=x)
		return t==(s&t);
	else
		return (s&(S^t))==0;
}

int dfs(int lim,int nw,int s)
{
	int& res=dp[lim][nw][s];
	if(~res)
		return res;
	if(nw==n)
	{
		res=!lim;
		return res;
	}
	res=0;
	if(lim)
	{
		for(int i=p[nw];i<n;++i)if(check(s,nw,i))
			res+=dfs(i==p[nw],nw+1,s^(1<<i));
	}
	else
	{
		for(int i=0;i<n;++i)if(check(s,nw,i))
			res+=dfs(0,nw+1,s^(1<<i));
	}
	return res;
}

void work()
{
	scanf("%d",&n);
	S=(1<<n)-1;
	for(int i=0;i<n;++i)
	{
		scanf("%d",p+i);
		--p[i];
	}
	memset(dp,-1,sizeof dp);
	printf("%d\n",dfs(1,0,0));
}

int main()
{
	//freopen("inverse.in","r",stdin);
	//freopen("inverse.out","w",stdout);
	int T;
	for(scanf("%d",&T);T--;)
		work();
	return 0;
}

CompilationN/AN/ACompile OKScore: N/A

Testcase #135.963 ms160 MB + 16 KBAcceptedScore: 4

Testcase #235.995 ms160 MB + 16 KBAcceptedScore: 4

Testcase #336.058 ms160 MB + 16 KBAcceptedScore: 4

Testcase #436.58 ms160 MB + 16 KBAcceptedScore: 4

Testcase #536.696 ms160 MB + 16 KBAcceptedScore: 4

Testcase #638.314 ms160 MB + 16 KBAcceptedScore: 4

Testcase #743.632 ms160 MB + 16 KBAcceptedScore: 4

Testcase #843.559 ms160 MB + 16 KBAcceptedScore: 4

Testcase #951.559 ms160 MB + 16 KBAcceptedScore: 4

Testcase #1079.05 ms160 MB + 16 KBAcceptedScore: 4

Testcase #1195.324 ms160 MB + 16 KBAcceptedScore: 4

Testcase #12171.357 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #1336.052 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #1438.501 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #1536.729 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #16223.358 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #1735.747 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #18293.641 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #19223.049 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #20179.212 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #21176.381 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #2235.816 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #2336.336 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #24408.84 ms160 MB + 12 KBRuntime ErrorScore: 0

Testcase #251 s160 MB + 16 KBTime Limit ExceededScore: 0


Judge Duck Online | 评测鸭在线
Server Time: 2026-04-18 01:14:40 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠