小明和小强各有十张纸币。纸币面值有六种:100 50 20 1 5 1。小明
先给小强一张纸币,接着小强在已有的11张里给小明一张。请问经过两次交换后,小明手中的
总面额有多少种不同的可能。
【输入说明】
输入两行,第一行为小明手上十张纸币的面值,第一行为小强手上十张纸币的面值。
【输出说明】
输出两次交换后,小明手中的总面额有多少种不同的可能。
【输入样例】
1 1 1 1 1 1 1 1 1 10
5 5 5 5 5 5 5 5 5 20
【输出样例】
5
【样例说明】
两次交换后,小明手中的总面额有19 38 23 29 14五种可能
#define N 10
int main() {
/*int a[N] = { 1,1,1,1,1,1,1,1,1,10 }, b[N + 1] = { 5,5,5,5,5,5,5,5,5,20 };*/
int a[N], b[N + 1];
int c[N * N] = { 0 };
int num = 0;
int kind = 0;
int l = 0;
for(int i=0;i<N;i++)
std::cin >> a[i];
for (int i = 0; i < N; i++)
std::cin >> b[i];
for (int i = 0; i < N; i++) {
b[N] = a[i];
for (int j = 0; j < N+1; j++) {
/*a[i] = b[j];*/
for (int k = 0; k < N; k++) {
if (k == i)
num += b[j];
else
num += a[k];
}
for (l = 0; l < kind; l++) {
if (num == c[l]) {
break;
}
}
if (c[l] == 0) {
c[kind] = num;
kind++;
}
num = 0;
}
}
/*for (int i = 0; i < kind; i++) {
std::cout << c[i]<<" ";
}*/
std::cout << kind;
}