問題 A 分數矩陣

2021-09-11 08:16:35 字數 681 閱讀 8736

我們定義如下矩陣:

1/1 1/2 1/3

1/2 1/1 1/2

1/3 1/2 1/1

矩陣對角線上的元素始終是1/1,對角線兩邊分數的分母逐個遞增。

請求出這個矩陣的總和。

輸入包含多組測試資料。每行給定整數n(n<50000),表示矩陣為n*n。當n=0時,輸入結束。

輸出答案,結果保留2位小數。

123

40

1.00

3.00

5.67

8.83

參考**及分析

分析1.如果這道題用二維陣列做,編譯時就會報錯,因為是在是太大了,空間超限;

2.如果取消陣列,用兩個for迴圈,會導致時間複雜度為o(n²),程式就會超時;

所以最好的辦法就是找規律,數分母為1的分數有幾個,分母為2的分數有幾個,……

然後用乙個for迴圈表示出來。

參考**

#include

intmain()

sum +

= n *

(1.0/1

);//n個1,單獨累加

printf

("%.2lf\n"

,sum);}

return0;

}

問題 A 分數矩陣

時間限制 1.000 sec 記憶體限制 32 mb 提交 868 解決 320 提交 狀態 命題人 外部匯入 題目描述 我們定義如下矩陣 1 1 1 2 1 3 1 2 1 1 1 2 1 3 1 2 1 1 矩陣對角線上的元素始終是1 1,對角線兩邊分數的分母逐個遞增。請求出這個矩陣的總和。輸入...

遞推 分數矩陣

i 分數矩陣 time limit 1000msmemory limit 32768kb64bit io format i64d i64u description 我們定義如下矩陣 1 1 1 2 1 3 1 2 1 1 1 2 1 3 1 2 1 1 矩陣對角線上的元素始終是1 1,對角線兩邊分數...

1067 Problem A 分數矩陣

時間限制 1 sec 記憶體限制 32 mb 提交 735 解決 279 我們定義如下矩陣 1 1 1 2 1 3 1 2 1 1 1 2 1 3 1 2 1 1 矩陣對角線上的元素始終是1 1,對角線兩邊分數的分母逐個遞增。請求出這個矩陣的總和。輸入包含多組測試資料。每行給定整數n n 50000...