社区讨论

玄学输出注意下

P2915[USACO08NOV] Mixed Up Cows G参与者 10已保存回复 18

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
18 条
当前快照
1 份
快照标识符
@mi6ylfq9
此快照首次捕获于
2025/11/20 12:56
4 个月前
此快照最后确认于
2025/11/20 15:34
4 个月前
查看原帖
rt,除了第1个点、第8个点,其他点全部输出0。有趣的是和题解作为标算对拍了数百次没有一次有错(下载数据本地也输出0),debug了一下午怎么也没查出错。求大佬相助!QWQ
CPP
#include<cstdio>
#define tin int
#define itn int
#define tni int
#define nit int
#define nti int
#define pritnf printf
#define scnaf scanf
#define retrun return
#define sizoef sizeof
#define ll long long
#define inl inline
#define br break
#define con continue
#define mst(a,b) memset(a,b,sizeof(a))
#define fora(x,a,b) for(re tin x=a;x<=b;++x)
#define forb(x,a,b) for(re itn x=a;x>=b;--x)
#define re register
#define str struct
#define infa 0x3f3f3f3f
#define infb 0x7fffffff
#define infc 1061109567
#define infd 0x7f
using namespace std;
#define maxa 24
#define maxb 70004
#include<cstring>
#include<iostream>

ll maxx=0,n,h[maxa]={0},r,ans[maxb][maxa],mi[]={1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072};

tin main()
{
	mst(ans,0);
	scanf("%lld%lld",&n,&r);
	fora(i,1,n)
	{
		scanf("%d",&h[i]);
	}
	fora(i,1,n)
	{
		ans[1<<(i-1)][i]=1;
	}
	////
	fora(i,0,mi[n])
	{
		fora(j,1,n)
		{
			if(!(i&1<<(j-1)))
			{
				con;
			}
			fora(k,1,n)
			{
				if(max(j,k)-min(j,k)>r)
				{
					ans[i][j]+=ans[i-(1<<(j-1))][k];
				}
			}
		}
	}
	//
	fora(i,1,n)
	{
		maxx+=ans[(1<<n)-1][i];
	}
	printf("%lld\n",maxx);
	return 0;
}

回复

18 条回复,欢迎继续交流。

正在加载回复...