給定 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累加的過程中,對於每⼀個輸⼊的數字
temp
,都能和其他
n-1個數字組合出新的數字,
temp
能夠放在個位也能夠放在⼗位,所以每個數字
temp
都能在個位出現
(n-1)
次,⼗位出現
(n-1)
次,在個位產⽣的累加效果為
temp * (n-1)
,⽽在⼗位產⽣
的累加效果為
temp * (n-1) * 10
,所以所有數字的累加結果
sum即是所有可能組合出來的
2位數字的和~
#includeusing namespace std;
int main()
}cout
}
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 隨後給出 ...