牛客·轻拍牛头

牛客·轻拍牛头_第1张图片
牛客·轻拍牛头_第2张图片

b[i]:输入
a[i]:计数
c[i]:答案
void solve()
{
    cin>>n;
    for(int i=0;i<n;i++)
    {
        cin>>b[i];
        a[b[i]]++;
    }
    
    for(int i=1;i<NN;i++)
    {
        if(a[i])
        {
            for(int j=i;j<NN;j+=i)
                c[j]+=a[i];
        }
    }
    for(int i=0;i<n;i++)
    {
        cout<<c[b[i]]-1<<'\n';
    }
}

你可能感兴趣的:(gaogesing的聪明题,java,算法,数据结构)