POJ1091(拓撲排序)

2021-08-17 20:44:12 字數 972 閱讀 4567

題目鏈結

題意:給定n與m,表示會出現前n個大寫字母,組成m個不等式。問能否判斷給定字母的大小關係,並且判斷第幾個不等式之後可以判斷成功,還要判斷第幾個之後會出現迴圈。

情況分析都在**裡了。

可憐我少了乙個點wa了一晚上。

#include

#include

#include

#include

#include

#include

using

namespace

std;

int pre[50],n,m;

int maze[50][50],ans[30],mount;

int tran()

}if(cnt != 1)no = 1;//如果0入度點不是乙個,那無法拓撲排序。

while(!q.empty())}}

if(mount != n)return

0;//最後排序點數不是n個,有環。

if(no == 1)return

1;//無法判斷。

for (int i = 0; i < n; i++)

if(in[i])return

1;//有點入度不是0

return2;}

int main()

if(maze[a][b] == 0)

int t = tran();

if(t == 0)

else

if(t == 2)}}

if(inflag != 0)

printf("inconsistency found after %d relations.\n",inflag);

else

if(flag == 0)

printf("sorted sequence cannot be determined.\n");

else

}}

POJ1091 跳蚤 容斥

解題報告 設數字分別為a1 a2,a3 m 那麼若方程x1 a1 x 2a2 xn 1m 1有解 則這張卡片可行。而此方程有解的充要條件為gc d a1 a2,a3 m 1 所以本題即為求gc d a1 a2,a3 m 1 1 a 1,a2 a3 an m 的方案數。那麼可以反著求gc d a1 a...

跳蚤 POJ 1091 容斥原理

跳蚤time limit 1000ms memory limit 10000k total submissions 8723 accepted 2601 description z城市居住著很多只跳蚤。在z城市週六生活頻道有乙個娛樂節目。乙隻跳蚤將被請上乙個高空鋼絲的正 鋼絲很長,可以看作是無限長。...

poj1091 跳蚤 容斥原理

思路 假設跳蚤選擇x1個第一張卡片,x2個第二張卡片。xn個第n張卡片,xn 1張寫著m的卡片,那麼就可以列出方程 a1 x1 a2 x2 an xn m x n 1 1 由於可以向左跳和向右跳,因此題目即問上述不定方程是否有解?答案以及它的證明可以在任何一本數論書中找到,它的充要條件是 a1,a2...