其他分享
首页 > 其他分享> > [2006年NOIP普及组] 明明的随机数

[2006年NOIP普及组] 明明的随机数

作者:互联网

1. [2006年NOIP普及组] 明明的随机数

l  分析:根据题意,设置一个标记数组和一个计数器,用for语句将数过一遍,将第一次出现的数标记为一,计数器加一,输出计数器就是不同随机数的个数,再用for语句将指定范围内的数过一遍,将其中已标记的数输出。

l   

#include<cstdio>

#include<iostream>

#include<cstring>

using namespace std;

int main()

{

       int n,a,b[1005],s=0;//b为标记数组

       cin>>n;

       memset(b,0,sizeof(b));

       for(int i=1;i<=n;i++)

       {     

              cin>>a;

              if(b[a]==0) s++;//第一次出现,计数器累加

              b[a]=1;//标记上

       }

       cout<<s<<endl;

       for(int i=0;i<=1000;i++)//在指定范围内过一遍数

     if(b[i]==1) cout<<i<<" ";//已标记的输出

       return 0;

 }

标签:NOIP,标记,int,计数器,2006,数过,随机数,include
来源: https://www.cnblogs.com/xdzxjinghan/p/16581395.html