思路**
給你 n
nn 個串,通過改變字元優先順序按指定順序排列
拓撲排序,考試時寫wa了。
首先,我們要判斷有包含關係的情況
然後,對於排序後兩個串第乙個不同處我們令a[i
]a[i]
a[i]
向 b [i
]b[i]
b[i]
連邊表示 a[i
]
i]a[i] a[
i]
i]跑完我們依次給字元賦值就可以了
回顧拓撲排序寫法:
將所有入度為0的點加入佇列,每次取出乙個節點記錄並刪除連線其他點的邊,同時再加入入度為0的點,最後如果記錄節點小於n則有環無解。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace std;
#define ll long long
intread()
while
('0'
<=c&&c<=
'9') x=
(x<<3)
+(x<<1)
+c-'0'
,c=getchar()
;return f*x;
}#define maxn 100
#define inf 0x3f3f3f3f
int in[maxn+5]
;vector<
int> g[30]
;char chan[maxn+5]
;void
topological_sort
(int n)}if
(int
(ans.
size()
)!=n)
puts
("ne");
else
return;}
int a[maxn+5]
;char s[maxn+5]
[maxn+5]
,t[maxn+5]
[maxn+5]
;int
main()
}if(!flag&&
strlen
(t[t]+1
)>
strlen
(t[t+1]
+1))
}topological_sort(26
);return0;
}
Leetcode題解 DFS 拓撲排序
深度優先搜尋 儲存有向圖 edges collections.defaultdict list 標記每個節點的狀態 0 未搜尋,1 搜尋中,2 已完成 visited 0 numcourses 用陣列來模擬棧,下標 0 為棧底,n 1 為棧頂 result list 判斷有向圖中是否有環 valid...
python 拓撲排序 Python 拓撲排序
python 拓撲排序 在圖論中,由乙個有向無環圖的頂點組成的序列,當且僅當滿足下列條件時,稱為該圖的乙個拓撲排序 英語 topological sorting 每個頂點出現且只出現一次 若a在序列中排在b的前面,則在圖中不存在從b到a的路徑。print 拓撲排序結果 g.topologicalso...
HDU 1285 確定比賽名次(拓撲排序)題解
problem description 有n個比賽隊 1 n 500 編號依次為1,2,3,n進行比賽,比賽結束後,裁判委員會要將所有參賽隊伍從前往後依次排名,但現在裁判委員會不能直接獲得每個隊的比賽成績,只知道每場比賽的結果,即p1贏p2,用p1,p2表示,排名時p1在p2之前。現在請你程式設計序...