如果一个人和所有他不认识的人都没有共同好友(即共同好友的 max 是 0),那么这些他不认识的人都是他的推荐好友(即 max 为 0 时答案为他不认识的人数)。
以下是 WA on 8 代码:
for(int i=1;i<=id;++i)
{
int mx=0,mx_num=0;
for(int j=0;j<ve[i].size();++j)
for(int k=0;k<ve[ve[i][j]].size();++k)
{
int x=i,y=ve[i][j],z=ve[y][k];
if(z==i||f[x][z]) continue;
++cnt[z];
if(cnt[z]>mx) mx=cnt[z],mx_num=1;
else if(cnt[z]==mx) ++mx_num;
}
cout<<s[i]<<' '<<mx_num<<endl;
for(int j=0;j<ve[i].size();++j)
for(int k=0;k<ve[ve[i][j]].size();++k)
{
int x=i,y=ve[i][j],z=ve[y][k];
if(z==i||f[x][z]) continue;
--cnt[z];
}
}
当 mx 等于 0 时应输出 id-1-ve[i].size() 而不是 0.