码迷,mamicode.com
首页 > 其他好文 > 详细

每日一九度之题目1021:统计字符

时间:2016-09-04 17:14:48      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:6050

解决:3491

题目描述:
    统计一个给定字符串中指定的字符出现的次数。
输入:
    测试输入包含若干测试用例,每个测试用例包含2行,第1行为一个长度不超过5的字符串,第2行为一个长度不超过80的字符串。注意这里的字符串包含空格,即空格也可能是要求被统计的字符之一。当读到‘#‘时输入结束,相应的结果不要输出。
输出:
    对每个测试用例,统计第1行中字符串的每个字符在第2行字符串中出现的次数,按如下格式输出:
    c0 n0
    c1 n1
    c2 n2
    ...
    其中ci是第1行中第i个字符,ni是ci出现的次数。
样例输入:
I
THIS IS A TEST
i ng
this is a long test string
#
样例输出:
I 2
i 3
  5
n 2
g 2

继续用桶的思想,这种题目很简单!O(∩_∩)O哈哈~

//Asimple
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <cctype>
#include <cstdlib>
#include <stack>
#include <cmath>
#include <string>
#include <queue>
#define INF 100000
using namespace std;
const int maxn = 105;
typedef long long ll ;
int n, m, num;
char str[maxn], s1[6];
int a[128]; 

int main(){
    while( gets(s1) != NULL ){
        if( strlen(s1) == 1 && s1[0] == # ) break;
        memset(a,0,sizeof(a));
        gets(str);
        for(int i=0; str[i]!=\0; i++){
            a[str[i]] ++ ;
        }
        for(int j=0; s1[j]!=\0; j++){
            printf("%c %d\n",s1[j],a[s1[j]]);
        }
    } 
    return 0;
}

 

每日一九度之题目1021:统计字符

标签:

原文地址:http://www.cnblogs.com/Asimple/p/5839532.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!