现在比较盛行这样的一个抽奖游戏:每个人在1到1000中选一个数字写下来,然后拿出来比较,谁的数字既没有和其它人重复的,并且是不重复里的最小的一个的话,那他这个就是Lucky Number。
谁手上得到这个Lucky Number,谁就会得到丰厚的奖品哦!
输入
共两行。第一行是n,下一行接着是n个人分别写下的数字,其中1 < = n < = 100。
输出
若哪个人手上的数是Lucky Number,则输出他的位置,同时把这个数也输出。
如果没有Lucky Number,就输出:"Thank you for playing"(注意,你的程序中文字不带双引号,文字内容必须一模一样!!)
输入样例
5
1 3 1 7 5
输出样例
2 3
#include
#include
main()
{
int p,i,j,sum1=0,number=0,place;
int *a,*b;
scanf("%d",&p);
a=(int*)malloc(p*sizeof(int));
b=(int*)malloc(p*sizeof(int));
for(i=0;iscanf("%d",&a[i]);
}
for(i=0,sum1=0;i
//取数组里每一个数为判断数
for(j=0;j
//判断除自己以外有没有别的数相同
{
if(number==a[j]) sum1+=1;
}
if(sum1==1) b[i]=a[i]; //将找到的独立数赋给新数组b
else b[i]=0; //b数组其余项为零
}
int max=b[0];
for(i=0;i
if(b[i]1])
{
max=b[i+1]; //依次判断大小并累计最大值
}
}
for(i=0;i
if(max==a[i]) place=i; //遍历数组a,找到最大值的位置
}
printf("%d %d",max,place);
}
打断点调试就行
题目让你找最小值,你为什么找最大值
而且
if(b[i]<b[i+1])
{
max=b[i+1]; //依次判断大小并累计最大值
}
你这是认真的吗