dalao?拿来吧你
  • 板块P1657 选书
  • 楼主ko_no_lzx_da
  • 当前回复9
  • 已保存回复9
  • 发布时间2021/7/19 09:57
  • 上次更新2023/11/4 14:13:02
查看原帖
dalao?拿来吧你
418419
ko_no_lzx_da楼主2021/7/19 09:57

帮忙看看

#include<iostream>
#include<cstring>
#include<string>
using namespace std;
int a[10000],a1[100000];
int n;
int ans=0;
int book[21];
void dfs(int pre){
	if(pre==n){
		ans++;
	}
	for(int i=0;i<2;i++){
		if(book[a[i]]==0){
			book[a[i]]=1;
			dfs(pre+1);
			book[a[i]]=0;
		}else if(book[a1[i]]==0){
			book[a1[i]]=1;
			dfs(pre+1);
			book[a1[i]]=0;
		}
		
	}
}

int main(){
	cin >>n;
	for(int i=0;i<n;i++){
		cin >>a[i]>>a1[i];
	}
	dfs(0);
	cout <<ans;
	return 0;
}

2021/7/19 09:57
加载中...