B 1069 微博转发抽奖(map映射的应用)

    技术2023-08-01  106

    题目

    思路

    参考的吉大秦少游大佬的思路,非常简洁明了。

    用string类型的数组记录输入,用map做一个string到int型的映射,通过键值来记录是否输出。 注:map的默认键值为0

    AC代码

    #include<bits/stdc++.h> using namespace std; int main(){ int m,n,s; cin>>m>>n>>s; int i; map<string,int> mp; //默认键值为0 string a[m+1]; for(int i=1;i<=m;i++){ cin>>a[i]; } if(s>m) cout<<"Keep going..."<<endl; else { cout<<a[s]<<endl; mp[a[s]] =1; i=s+n; while(i<=m){ if(mp[a[i]]==0){ cout<<a[i]<<endl; mp[a[i]]=1; i+=n; } else i++; //若输出过,则输出下一位 } } return 0; }
    Processed: 0.008, SQL: 9