PAT (B)1056 組合數的和

2021-08-22 03:30:09 字數 554 閱讀 9671

給定 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
最簡單的思路:兩個迴圈巢狀,減去重複的a[i]*10 + a[i]的情況

#include using namespace std;

int main()

for(int i = 0; i < n; i++)

for(int j = 0; j < n; j++)

for(int i = 0; i < n; i++)

sum-=a[i]*10+a[i];

cout

}

1056 組合數的和

1.解題思路 用sum統計所有可能組合出來的兩位數字之和,在sum累加的過程中 對於每乙個輸入的數字temp,都能和其他n 1個數字組合出新的數字 temp能夠放在個位也能夠放在十位,所以每個數字temp都能在個位出現 n 1 次 十位出現 n 1 次,在個位產生的累加效果為temp n 1 而在十...

1056 組合數的和

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

1056 組合數的和 15

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