連通矩陣 ZOJ 4124 Median

2021-09-22 14:01:54 字數 837 閱讀 3434

【題意】:

對於乙個包含n個數的(n為奇數)序列val[ ],排序後的 val[ (n+1) / 2 ] 定義為 median;

有 n 個數,並有 m 組關係,對於第 i 組關係 ai,bi 代表第 val[ai] > val[bi];

但並沒有給出具體的數值;

輸出乙個包含 n 個元素的陣列 s[ ] ;

讓你判斷第 i 個數 val[ i ]是可能為中位數,如果是,第 i 位為 1;

如果不是,第 i 位為 0;

輸出 n 個數,其中第 i 個數為 0 或 1,含義如上;

【題解】:

1、判環,只要有環全零

2、跑乙個flody來時算出來,然後直接處理即可,

最後加判斷

正向cnt1<=n/2

反向cnt2<=n/2

即可

#includeusing namespace std;

const int n = 105;

int a[n][n];

int vis[n];

int main()

/*for(int i=1;i<=n;i++)}*/

for(int k=1;k<=n;k++)}}

}int f = 1 ;

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

}if( cnt1 <= (n/2) && cnt2 <=(n/2) )

}if( !f ) memset(vis,0,sizeof(vis));

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

printf("\n");

}return 0;

}

ZOJ 3690 矩陣快速冪乘

不難推出 m k k m k k n 1 f n 0 0 m k k 1 接下來用矩陣冪乘就可以了!include include include include include include include includeusing namespace std typedef long long...

矩陣快速冪 ZOJ 2853 Evolution

提交上去是ac的,但是在做的過程中有個問題。我是在win上用vs2012編譯的,執行的時候出現stack overflow,然後我換用了code blocks,也出現了同樣的問題,我仔細看了 一步一步除錯,覺得沒有問題,但是執行起來就是出問題。我把n的值改小了點,就可以了。後來我換了linux 的p...

zoj 3497 Mistwald 矩陣快速冪

知道了矩陣的新作用,矩陣a p,a i j 的數值是從i到j長度為p的路徑條數,矩陣相乘如果a i k為1,b k j 為1,a i j 必然 1,表明以k為橋梁將i和j連線起來,和floyd演算法本質上是一致的。傳送門 include include include int len matrix ...