BZOJ 2396 神奇的矩陣 矩陣 隨機

2021-07-26 14:13:23 字數 616 閱讀 3121

其實不要放過題目給出的每乙個資訊,就像這一道題,思考為什麼一定是矩陣,為什麼不是乙個簡單的數列之內的,說明解決這一道題就很用到矩陣的特殊性質。其中矩陣有乙個性質就是a*b=c,c的行數等於a的行數,c的列數等於b的列數,所以我們完全可以隨機構造乙個n行1列的舉證,然後利用矩陣乘法的結合律把矩陣變成n行1列的新矩陣,然後判斷。

#include#include#include#define maxn 1010

#define rep(i,b) for(int i=1;i<=b;i++)

#includeusing namespace std;

int a[maxn][maxn],b[maxn][maxn],c[maxn][maxn],t,n;

int ans1[maxn],ans2[maxn],ans3[maxn],rad[maxn];

int read()

void mull(int a[maxn][maxn],int b[maxn],int s[maxn]) }}

int main()

}if(ok)puts("no");

else puts("yes");

} return 0;

}

bzoj2396 神奇的矩陣

description 給出三個行數和列數均為n的矩陣a b c,判斷a b c是否成立。input 題目可能包含若干組資料。對於每組資料,第一行乙個數n,接下來給出三個n n的矩陣,依次為a b c三個矩陣。output 對於每組資料,若a b c成立,則輸出yes,否則no。每個答案佔一行。sa...

bzoj2396 神奇的矩陣

與51nod1140一樣。不過這題是多組資料的。坑。include include include include includeusing namespace std define rep i,s,t for int i s i t i define dwn i,s,t for int i s i...

bzoj2396 神奇的矩陣

再隨機生成乙個n 1的矩陣d,若 a b c 則顯然有 a b d c d 根據結合律,又有 a b d c d 由於 n n n 1 的複雜度是 o n 2 的,因此暴力乘法即可 程式的做法是判斷乘起來的矩陣所有數字之和與c是否相同,即求 a i k b k j 對a的每一列預處理求和,然後就可以...