1 solutions

  • 1
    @ 2025-7-5 16:27:47
    #include <bits/stdc++.h>
    using namespace std;
    int n,e,k,a[11][11],ans;
    bool vis[11];
    void dfs(int x);
    int main(){
    	scanf("%d%d",&n,&e);
    	for(int i = 1;i<=e;i++){
    		int c,b;
    		scanf("%d%d",&c,&b);
    		a[c][b] = 1;
    		a[b][c] = 1;
    	}
    	scanf("%d",&k);
    	vis[3] = true;
    	dfs(3);
    	printf("%d",ans);
    	return 0;
    }
    void dfs(int x){
    	if(x == k){
    		ans++;
    		return;
    	}
    	for(int i = 1;i<=n;i++)
    		if(a[x][i] == 1 && vis[i] == false){
    			vis[i] = true;
    			dfs(i);
    			vis[i] = false;
    		}
    }
    
    • 1

    Information

    ID
    767
    Time
    1000ms
    Memory
    256MiB
    Difficulty
    9
    Tags
    (None)
    # Submissions
    9
    Accepted
    4
    Uploaded By