我发现了不得了的东西
查看原帖
我发现了不得了的东西
990027
Rain2012楼主2023/7/31 23:59

太阳从西边升起。 ???????

哦,还有正事:我下面这个程序有点问题,谁能修一修,必有重谢!

#include<bits/stdc++.h>
using namespace std;
bool vis[25];
int ans[25];
int n,x,maxw = -1;
struct node
{
    int s,e,l;
};
node o[100];
bool end()
{
	for(int i = 1;i <= n;i++)
	{
		if(vis[i] == false) return false;
	}
	return true;
}
void dfs(int now_place,int now_long)
{
    if(end())
    {
        if(now_long > maxw)
        {
            maxw = now_long;
        }
    }
    else
    {
        for(int i = 1;i <= x;i++)
        {
            if(!vis[o[i].e] && !vis[o[i].s] && o[i].s == now_place)
            {
                vis[o[i].e] = true;
                vis[o[i].s] = true;
                dfs(o[i].e,now_long+o[i].l);
                vis[o[i].e] = false;
                vis[o[i].s] = false;
            }
        }
        //cout<<now_long<<" "<<vis[1]<<" "<<vis[2]<<" "<<vis[3]<<" "<<vis[4]<<endl;
    }
}
int main()
{
    int s,e,l;
    cin>>n>>x;
    for(int i = 1;i <= x;i++)
    {
        cin>>s>>e>>l;
        o[i] = (node){s,e,l};
    }
    for(int i = 1;i <= n;i++)
    {
    	dfs(i,0);
    	//cout<<"=========="<<endl;
    }
    cout<<maxw;
    return 0;
}
2023/7/31 23:59
加载中...