HDOJ.2072 单词数(map)

单词数

点我挑战题目
点我一起学习STL-MAP

题意分析

给出一行单词,判断这行有不同种的单词多少个,用map可以轻松解决。

代码总览

/*
    Title:HDOJ.2072
    Author:pengwill
    Date:2016-11-21
*/
#include <iostream>
#include <map>
#include <stdio.h>
#include <string>
#include <string.h>
#define max 10001

using namespace std;
char ch;
char str[max];
string s;
int main()
{
    typedef map<string,int> mmap;
    mmap a;
    int i = 0,judge= 0;
    while(gets(str)&&str[0] !='#'){
        s="";
        int len = strlen(str);
        for(i =0;i<len;i++){
            while(str[i]>='A' && str[i]<='z'){
                s+=str[i];
                i++;
                judge = 1;
            }
            if(judge){
                a[s]=1;
                judge = 0;
                s.clear();
            }
        }
        printf("%d\n",a.size());
        a.clear();
    }

    return 0;
}
posted @ 2016-11-21 11:11  pengwill  阅读(103)  评论(0编辑  收藏  举报