全部MLE
查看原帖
全部MLE
786726
kobebraint楼主2024/2/23 17:44

rt,不知道哪里错了

#include<bits/stdc++.h>
using namespace std;
bool photo[105][105];
int n,m,k,u,v,color[105],cnt;
bool used(int num,int colornow){
    for(int i=1;i<=n;i++){
        if(photo[i][num]&&color[i]==colornow){
            return 0;
        }
    }
    return 1;
}
int dfs(int num){
    if(num==n+1){
        cnt++;
    }else{
        for(int i=1;i<=k;i++){
            if(used(num,i)){
                color[num]=i;
                dfs(num+1);
                color[num]=0;
            }
        }
    }
}
int main(){
    cin>>n>>m>>k;
    for(int i=1;i<=m;i++){
        cin>>u>>v;
        photo[u][v]=1;
        photo[v][u]=1;
    }
    dfs(1);
    cout<<cnt;
    return 0;
}
2024/2/23 17:44
加载中...