编程之美

问题描述:
Tango是微软亚洲研究院的一个试验项目。研究院的员工和实习生们都很喜欢在Tango上面交流灌水。统计结果表明,有3个发帖很多的ID,他们的发帖数目都超过了帖子总数目N的1/4。如果你有一个当前论坛上所有帖子(包括回帖)的列表,其中帖子作者的ID也在表中,你能从发帖ID列表中快速找出他们的ID吗?

#include
void find(int *p,int N,int q[3])
{
    int i,j,k,t;
    int  n_times[3]={0,0,0};
    q[0]=q[1]=q[2]=-1;
    for(i=0;ifor(j=0;j<3;j++)
            if(p[i]==q[j])
            {
                n_times[j]++;
                break;
            }
        if(j==3)
        {
            for(k=0;k<3;k++)
            {
                if(n_times[k]==0)
                {
                    q[k]=p[i];
                    n_times[k]=1;
                    break;
                }
            }
            if(k==3)
            {
                for(t=0;t<3;t++)
                    n_times[t]--;
            }
        }   
    }
    for(i=0;i<3;i++)
        printf("%d ",n_times[i]);
}

void main()
{
    int a[12]={1,6,6,5,5,7,2,2,5,8,6,2},b[3];
    find(a,12,b);
    for(int i=0;i<3;i++)
        printf("%d ",b[i]);

}

你可能感兴趣的:(程序问题)