题目描述
题目:
要求下排每个数都是先前上排那十个数在下排出现的次数。
上排的十个数如下:
【0,1,2,3,4,5,6,7,8,9】
举一个例子,
数值: 0,1,2,3,4,5,6,7,8,9
分配: 6,2,1,0,0,0,1,0,0,0
0在下排出现了6次,1在下排出现了2次,
2在下排出现了1次,3在下排出现了0次….
输入
输入:
0 1 2 3 4 5 6 7 8 9
输出
输出:
6 2 1 0 0 0 1 0 0 0
样例输入
0 1 2 3 4 5 6 7 8 9
样例输出
6 2 1 0 0 0 1 0 0 0
参考代码
#include<stdio.h>
#define LEN 10
int arr[LEN] ;
//= {0,1,2,3,4,5,6,7,8,9};
int b[LEN] = {};
int get();
int get1(int num);
int main()
{
int k,i,success = 0;
for (i=0;i<10;i++)
scanf("%d",&arr[i]);
while(success == 0)
{
success = get();
}
for (i = 0; i < 9; i++)
{
printf("%d ",b[i]);
}
printf("%dn",b[i]);
}
int get()
{
int i,num,fre;
int success = 1;
for(i = 0; i < LEN; i++)
{
num = arr[i];
fre = get1(num);
if(b[i] != fre)
{
b[i] = fre;
success = 0;
}
}
return success;
}
int get1(int num)
{
int i;
int count = 0;
for(i = 0; i < LEN; i++)
{
if(b[i] == num)
{
count++;
}
}
return count;
}
解析
暂无