PAT乙級-1056. 組合數的和(15)
阿新 • • 發佈:2017-08-23
根據 輸出 合數 代碼 std log style 不同的 mes
給定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
分析:兩位數,根據排列組合,每個數出現(n-1)次個位 , (n-1)次十位
sum=(a*10+a)*(n-1)
題解代碼如下:
#include<iostream> usingnamespace std; int main() { int n; cin >> n; int a[9]; int sum=0; for (int i = 0; i < n; i++) { cin >> a[i]; sum = sum + a[i] * 10 + a[i]; } sum = sum * (n-1); cout << sum; return 0; }
PAT乙級-1056. 組合數的和(15)