题解 | #计算某字母出现次数#

计算某字母出现次数

http://www.nowcoder.com/practice/a35ce98431874e3a820dbe4b2d0508b1

  1. cin 不会清楚输入缓存中的任何跳过字符,注意使用 cin.ignore(); getline 会读所有字符直到遇到换行符(跳过结束,并且从缓冲区中删除). getchar 会读到\n.
  2. tolower可以直接放入getchar得返回值(那个char)
  3. transform(in.begin(),in.end(),in.begin(),::tolower); 这种可以转换字符串为小写字符.
#include<iostream>
#include<set>
#include<map>
#include<vector>
#include<string>
#include <algorithm>
#include <cctype>

using namespace std;

int main() {

    string in;

    getline(cin,in);

    char a = tolower(getchar());


    if(!in.size()) return 0;

    transform(in.begin(),in.end(),in.begin(),::tolower);

    int map[128]={0};

    for(int i =0; i< in.size();i++){
        map[in[i]]++;
    }


    cout<<map[a]<<endl;

    return 0;
}
算法解析 文章被收录于专栏

这里主要是算法岗的自我思路总结

全部评论

相关推荐

10-30 16:31
重庆大学 Java
代码飞升_不回私信人...:你说你善于学习,大家都会说。你说你是985,985会替你表达一切
点赞 评论 收藏
分享
友友们,我实在是不太明白,校招的话现在大多也是提前实习,然后转正也是需要考核的,考核通过才能转正,那这跟实习转正有什么区别啊
苦闷的仰泳鲈鱼刷了1...:提前实习,是让你提前熟悉业务的,后续是入职后可以减少试用期的(大部分是包入职的);转正实习,要是hc不够或者其他原因,让你正式offer可能都没有,这个风险很大。 ---个人看法和了解到的。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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