Map

谁是你的潜在朋友

http://www.nowcoder.com/questionTerminal/0177394fb25b42b48657bc2b1c6f9fcc

map可以直接过

#include<iostream>
#include<map> 
#include<vector>
#include<string> 
using namespace std;
int main()
{
    map<int,int> book;
    vector<int> stu;
    int n,m;

    cin>>n>>m;
    int b;
    for(int i=0;i<n;i++)
    {
        cin>>b;
        stu.push_back(b);
        book[b]++;    
    } 
    map<int,int>::iterator it;
    for(int i=0;i<n;i++)
    {
        it=book.find(stu[i]);
        if(it->second-1>0)
            cout<<it->second-1<<endl;
        else
            cout<<"BeiJu"<<endl;
    }
    return 0;
}
全部评论
发现自己的错误了,谢谢。
点赞 回复 分享
发布于 2020-03-05 16:01
是因为上面N已经减成0了,下面 for(int i=0;i<n;++i){ it = book.find(student[i]); if(it->second-1>0){ 这个无法执行
点赞 回复 分享
发布于 2020-03-05 15:31
#include<iostream> (720)#include<cstdio> #include<vector> (721)#include<string> #include<map> using namespace std; int main(){ map<int,int> book; vector<int> student; int n,m; cin>>n>>m; int temp; while(n--){ cin>>temp; student.push_back(temp); book[temp]++; } map<int,int>::iterator it; for(int i=0;i<n;++i){ it = book.find(student[i]); if(it->second-1>0){ cout<<it->second-1<<endl; } else{ cout<<"BeiJu"<<endl; } } return 0; }
点赞 回复 分享
发布于 2020-03-05 15:28
while(n--)和for(i<n;i++)是一样的啊,肯定是其他方面出问题了。完整代码我看一下。
点赞 回复 分享
发布于 2020-03-05 11:55
for(int i=0;i<n;i++) //您好,请问为什么我这里写while(n--)就不会有输出结果 { cin>>b; stu.push_back(b); book[b]++; }
点赞 回复 分享
发布于 2020-03-05 10:31

相关推荐

程序员牛肉:你这简历有啥值得拷打的?在牛客你这种简历一抓一大把,也就是个人信息不一样而已。 关键要去找亮点,亮点啊,整个简历都跟流水线生产出来的一样。
点赞 评论 收藏
分享
评论
8
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务