1056 組合數的和 15 分 C語言

2022-08-12 18:24:13 字數 920 閱讀 4874

給定 n 個非 0 的個位數字,用其中任意 2 個數字都可以組合成 1 個 2 位的數字。要求所有可能組合出來的 2 位數字的和。例如給定 2、5、8,則可以組合出:25、28、52、58、82、85,它們的和為330。

輸入格式:

輸入在一行中先給出 n(1 < n < 10),隨後給出 n 個不同的非 0 個位數字。數字間以空格分隔。

輸出格式:

輸出所有可能組合出來的2位數字的和。

輸入樣例:

3 2 8 5
輸出樣例:

330
分析:

這道題限定了新產生的資料是兩位數,大大減少了這道題的難度,

sum = sum * 11 * (n - 1);這個公式的推導如下:

2 ,5,8 這3個數

25+28+52+58+82+85

=20+5+20+8+50+2+50+8+80+2+80+5

=(20+50+80+2+5+8)*2

=(210+510+8*10+2+5+8)*2

=(2+5+8)*(10+1)*2

=(2+5+8)112

**:

#include

intmain()

;int sum =0;

for(i =

0; i < n; i++

) sum = sum *11*

(n -1)

;printf

("%d"

,sum)

;return0;

}

1056 組合數的和 (15 分)

這道題出的不嚴謹,萬一有重複的數字就會出錯,例如3 2 2 2 輸出結果為132其實只能組成22這一種二位數。1056 組合數的和 15 分 給定 n 個非 0 的個位數字,用其中任意 2 個數字都可以組合成 1 個 2 位的數字。要求所有可能組合出來的 2 位數字的和。例如給定 2 5 8,則可以...

1056 組合數的和 15 分

給定 n 個非 0 的個位數字,用其中任意 2 個數字都可以組合成 1 個 2 位的數字。要求所有可能組合出來的 2 位數字的和。例如給定 2 5 8,則可以組合出 25 28 52 58 82 85,它們的和為330。輸入在一行中先給出 n 1 n 10 隨後給出 n 個不同的非 0 個位數字。數...

1056 組合數的和 15 分

1056 組合數的和 15 分 給定 n 個非 0 的個位數字,用其中任意 2 個數字都可以組合成 1 個 2 位的數字。要求所有可能組合出來的 2 位數字的和。例如給定 2 5 8,則可以組合出 25 28 52 58 82 85,它們的和為330。輸入在一行中先給出 n 1 n 10 隨後給出 ...