程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> POJ 1041 求解歐拉回路方案

POJ 1041 求解歐拉回路方案

編輯:C++入門知識

這題模板太神了……幾乎不用自己再寫什麼,只要把圖建好就行了……

對了,剛才做了後琦神說了歐拉回路了漢密頓回路才記得其區別:歐拉回路是一筆畫問題,即邊走且只走一次;而漢密頓回路是點走且只下次一次。

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#define PI acos(-1.0)
#define mem(a,b) memset(a,b,sizeof(a))
#define sca(a) scanf("%d",&a)
#define sc(a,b) scanf("%d%d",&a,&b)
#define pri(a) printf("%d\n",a)
#define lson i<<1,l,mid
#define rson i<<1|1,mid+1,r
#define MM 1000005
#define MN 2000
#define INF 1000000009
#define eps 1e-7
using namespace std;
typedef long long ll;
int f[MN];
vectorpath;
vector< pair >adj[MN];
bool vis[MM];
int find(int x)
{
    return x==f[x]?x:f[x]=find(f[x]);
}
void add(int x,int y,int z)
{
    adj[x].push_back(make_pair(z,y));
    adj[y].push_back(make_pair(z,x));
}
void dfs(int u)
{
    for(int i=0; i

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved