小明从一副扑克牌中(没有大小王,J认为是数字11,Q是12,K是13,A是1)抽出2张牌求和,请问能够组合出多少个不相等的数,按照由小到大输出这些数。
第一行是一个整数n代表(n<=52)扑克牌的总数量第二行的n个整数分别代表扑克牌的数值
第一行是一个整数m代表组合出不相等的数字个数。第二行m个数用空格隔开代表这m个由小到大排序的不相等的数。
输入复制
4
3 1 2 4
输出复制
5
3 4 5 6 7
#include <iostream>
using namespace std;
int main()
{
int a[110];
int b[110];
int lb = 0;
int n;
cin>>n;
for(int i = 0;i<n;i++)
{
cin>>a[i];
}
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
bool f = false;
for(int k = 0;k<n;k++)
{
if(a[i] == b[j])
{
f = true;
break;
}
}
if(f == false)
{
b[lb] = a[i];
lb++;
}
}
}
for(int i = 0;i<lb;i++)
{
for(int j = 0;j<lb;j++)
{
if(b[j]>b[j+1])
{
int f = b[j];
b[j] = b[j+1];
b[j+1] = f;
}
}
}
for(int i = 0;i<lb;i++)
{
cout<<b[i]<<" ";
}
return 0;
}
某人有m张3分的邮票和n张5分的邮票,用这些邮票中的一张或若干张(也可以是0张)可以得到多少种不同的大于0的邮资?请找出可能组合的邮资方案总数,并按照由小到大的顺序输出所有不重复的大于0的方案!(5.1.97)
如:1张3分和1张5分可能的邮资组合如下
0张3分+1张5分=5分
1张3分+0张5分=3分
1张3分+1张5分=8分
因此,可能的方案有3种,排序后的结果是:3 5 8!
两个整数,m和n,分别代表了3分和5分的邮票的数量!(1<=m,n<=100)
输出有两行,第一行输出这两种邮票能组合的不同的大于0的邮资方案,数与数之间用空格隔开!第二行输出可能的方案总数!
输入复制
2 2
输出复制
3 5 6 8 10 11 13 16
8
#include <iostream>
using namespace std;
int main()
{
int a[110];
int b[110];
int lb = 0;
int n;
cin>>n;
for(int i = 0;i<n;i++)
{
cin>>a[i];
}
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
bool f = false;
for(int k = 0;k<n;k++)
{
if(a[i] == b[j])
{
f = true;
break;
}
}
if(f == false)
{
b[lb] = a[i];
lb++;
}
}
}
for(int i = 0;i<lb;i++)
{
for(int j = 0;j<lb;j++)
{
if(b[j]>b[j+1])
{
int f = b[j];
b[j] = b[j+1];
b[j+1] = f;
}
}
}
for(int i = 0;i<lb;i++)
{
cout<<b[i]<<" ";
}
return 0;
}