题目1156:谁是你的潜在朋友

Hash算法

#include<iostream>
using namespace std;
 
int book[201]={0};//初始化了201个
int person[1000];
int main()
{
    int N;//N个读者N>=2
    int M;//M本书依次编号1,2,……M
    int i;
    int j;
    while(cin >> N >> M)
    {
        for(i =0; i<= M; i++)//M这里取等号
        {
            book[i]= 0;
        }
        for(i =0; i<N; i++)
        {
            int tmp;//记录当前输入的书号
            cin >> tmp;
            book[tmp]++;
            person[i] = tmp;
        }
        for(i =0; i<N; i++)
        {
            int per = person[i];            
            if(book[per] >=2)
            {
                cout << book[per]-1 <<endl;
            }
            else if(book[per] ==1)
            {
                cout << "BeiJu" <<endl;
            }               
        }       
    }
    return 0;
}
/**************************************************************
    Problem: 1156
    User: itswyy
    Language: C++
    Result: Accepted
    Time:10 ms
    Memory:1524 kb
****************************************************************/



你可能感兴趣的:(题目1156:谁是你的潜在朋友)