1樓:煢煢__相吊
vara,b,c,i,j,k:longint;
x,y,f:array[0..2000,0..2000]of longint;
begin
read(a);
read(b);
read(c);
for i:=1 to a do
for j:=1 to b do
read(x[i,j]);
for i:=1 to b do
for j:=1 to c do
read(y[i,j]);
writeln(a,' ',c);
for i:=1 to a do
begin
for j:=1 to c do
begin
for k:=1 to b do
f[i,j]:=f[i,j]+x[i,k]*y[k,j];
write(f[i,j],' ');
end;
writeln;
end;
end.
pascal 矩陣乘法的完整過程?
pascal 中一個關於矩陣乘法的問題
2樓:匿名使用者
拍菊誰盤溜穿幻似學倆舟體二灰鹽
願你倆用愛去綰著對方,彼此互相體諒和關懷,共同分享今後的苦與樂。敬祝百年好合永結同心!
3樓:
??? ?? ???? ? ???? ?
...!!!!!
..??
!?!?
..= =
急求!!關於矩陣乘法的判斷-pascal 10
4樓:匿名使用者
似乎這個找不出o(n)的吧...
最快是o(n^2)...
5樓:曉月寒波
o(n^2)的演算法應該很簡單把,每個乘出來一對比就完了嗎??!
關於pascal裡的實型乘法運算
6樓:匿名使用者
double、real都只能精確到小數點後17位
必須用高精度運算
pascal矩陣
7樓:
帕斯卡矩陣
帕斯卡矩陣:由楊輝三角形表組成的矩陣稱為帕斯卡(pascal)矩陣。
楊輝三角形表是二次項 (x+y)^n 後的係數隨自然數 n 的增大組成的一個三角形表。
如4階帕斯卡矩陣為:
pascal(4)=
[1 1 1 1
1 2 3 4
1 3 6 10
1 4 10 20]
pascal(n)是矩陣實驗室(matrix laboratory)matlab中的命令,利用pascal()命令可以在矩陣實驗室中方便的得到任意階帕斯卡矩陣。設a為帕斯卡矩陣,則在matlab命令視窗中輸入a=pascal(n),n為正整數,可得到階數為n的帕斯卡矩陣。
8樓:匿名使用者
const max=100;
var a:array[1..max,1..max]of longint;
n,i,j,sum,m,mm:longint;
begin
readln(n);
i:=1;j:=1;m:=n;mm:=1;
while sum<>n*n do beginfor i:=mm to m do begininc(sum);
a[i,j]:=sum;
if sum=n*n then break;
end;
for j:=mm+1 to m do begininc(sum);
a[i,j]:=sum;
if sum=n*n then break;
end;
for i:=m-1 downto mm do begininc(sum);
a[i,j]:=sum;
if sum=n*n then break;
end;
for j:=m-1 downto mm+1 do begininc(sum);
a[i,j]:=sum;
if sum=n*n then break;
end;
dec(m);inc(mm);
end;
for j:=1 to n do beginfor i:=1 to n do write(a[i,j]:4);
writeln;
end;
readln;
end.
pascal 矩陣的轉置
9樓:聽不清啊
假如矩陣已在a陣列中,通過以下迴圈即可將其轉置到b陣列中。
for i:=1 to 3 do
for j:=1 to 4 do
b[j,i]:=a[i,j];
完成後即可列印。
pascal乘積最大問題
10樓:匿名使用者
我們一起來分析一下:
設字串長度為n,乘號數為k,如果n=50,k=1時,
有(n-1)=49種不同的乘法,當k=2時,有c(2,50-1)=1176種乘法,既c(k,n-1)種乘法,當n、k稍微大一些的時候,用窮舉的方法就不行了。
設數字字串為a1a2…an
k=1時:一個乘號可以插在a1a2…an中的n-1個位置,這樣就得到n-1個子串的乘積:
a1*a2…an, a1a2*a3…an, …, a1a2…a n-1*an (這相當於是窮舉的方法)
此時的最大值=max
k=2時,二個乘號可以插在a1a2…an中n-1個位置的任兩個地方, 把這些乘積
分個類,便於觀察規律:
①倒數第一個數作為被乘數:
a1*a2 …a n-3 a n-2 a n-1*an,
a1a2 …*a n-2 a n-1*an,
a1a2 …*a n-1*an。
設符號f[n-1,1]為在前n-1個數中插入一個乘號的最大值,則的最大值為
f[n-1,1]*an。
②倒數第二個數作為被乘數:
a1*a2 …an-3 a n-2* a n-1,
an … a1a2 …*a n-2*a n-1an,
a1a2…*a n-3 a n-2* a n-1 an。
設符號f[n-2,1]為在前n-2個數中插入一個乘號的最大值,則的最大值為
f[n-2,1]*a n-1 an
③倒數第三個數作為被乘數:
… 設符號f[n-3,1]為在前n-3個數中插入一個乘號的最大值,則的最大值為
f[n-3,1]*a n-2 a n-1 an
…… a3~an作為被乘數:f[2,1]*a3 …a n-2 a n-1 an
此時的最大乘積為:
f[n,k]=max
設f[i,j]表示在 i 個數中插入 j 個乘號的最大值,g[i,j]表示從ai到aj的數字列,則可得到動態轉移方程:
f[i,j] = max
(1<=i<=n, 1<=j<=k)
邊界: f[i,0] =g[1,i] (數列本身)
階段:子問題是在子串中插入j-1,j-2……1,0個乘號,因此乘號個數作為階段的劃分(j個階段)
狀態:每個階段隨著被乘數數列的變化劃分狀態。
決策:在每個階段的每種狀態中做出決策。
資料結構:
(此題不需要高精度,pascal用longint即可ac)
int n,k; /* n為數字個數,k為劃分個數*/
int i,j,l; /*迴圈變數*/
char c; /*字元讀入*/
int data[50]=; /*存數字的陣列*/
int g[50][50],f[50][10]; /*g為數字列,f為動態規劃陣列*/
初始化:
cin >> n >> k; /*讀入,n,k*/
for(i=1;i<=n;i++)
for(i=1;i<=n-1;i++)
for(j=i+1;j<=n;j++)
g[i][j]=g[i][j-1]*10+data[j]; /*初始化數列*/
for(i=1;i<=n;i++)
f[i][0]=g[1][i]; /*初始化動態規劃陣列*/
動態規劃:
for(i=1;i<=n;i++)/*方程:f[i,j]表示前i個數中插入j個*號的最優值。*/
for(j=1;j<=i+1;j++)
for(l=1;l<=i-1;l++)
f[i][j]=max(f[i][j],f[l][j-1]*g[l+1][i]);
輸出f[n][k]
11樓:匿名使用者
這是動規題
並且是noip上 吧
不難看看題解就知道了
pascal 輸入n(1<=n<=20),輸出n*n的矩陣,且按照一定的規律。
12樓:匿名使用者
varn,i,j:longint;
begin
readln(n);
for i:=1 to n do
begin
for j:=1 to n-1 do write((i-1)*n+j,' ');
writeln(i*n);
end;
end.
13樓:
vari,j,k,o,p,n,m:longint;
a:array[1..9,1..9]of longint;
begin
i:=1; j:=1; k:=1;
read(n);
while k<=n*n do
begin
a[i,j]:=k;
dec(i); inc(j); inc(k);
if (i=0) or (j=n+1) thenbegin
i:=i+j; j:=1;
if i>n then
begin
j:=1+i-n;i:=n;
end;
end;
end;
for i:=1 to n do
for j:=1 to n do
if j=n then writeln(a[i,j]:3) else write(a[i,j]:3);
end.
分塊矩陣乘法的問題,,可以把矩陣任意的分塊嗎?矩陣分塊乘法要注意什麼?比如
這樣分了你的0還是方陣嗎?以左上角的0為例,他是一個3 1階矩陣 即列向量 在計算a 2時,其11元是0 0 e 0 0兩個列向量又怎麼相乘呢。矩陣分塊是可以隨意分的,但是特定的題目也要具體對待 矩陣與其分塊矩陣等價嗎,如果將兩個矩陣相乘劃分為分塊矩陣相乘應如何劃分才可以計算 矩陣與其分塊矩陣實際上...
矩陣乘法怎麼算,詳細的步驟,這個矩陣乘法怎麼算
設a aij 是m行s列的 b bij 是s行n列的 則a,b 可乘,結果是 m行n列的矩陣.設ab c cij 則 ab的第 i行第j列的元素版 a的第i行的各元素分權別b的第j列的各元素之和即cij ai1b1j ai2b2j aisbsj 不清楚,再問 滿意,請採納 祝你好運開 這個矩陣乘法怎...
怎樣使用matlab計算矩陣乘法
矩陣分析是解決很多問題的好方法,但是很多時候矩陣的運算比較繁瑣,回特別是高階矩陣運算答。這時候如果用matlab來計算就方便快捷得多。下面我將介紹一些基本的矩陣運算方法。如加,減,乘,除,轉置,求逆。約定 a 1,3,5 2,4,6 7,9,8 b 9,6,4 3,4,5 2,3,4 工具 原料 m...