zoukankan      html  css  js  c++  java
  • 23-单词数(HDU2070)

            单词数

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 61557    Accepted Submission(s): 15270


    Problem Description
    lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数。下面你的任务是帮助xiaoou333解决这个问题。
     
    Input
    有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束。
     
    Output
    每组只输出一个整数,其单独成行,该整数代表一篇文章里不同单词的总数。
     
    Sample Input
    you are my friend #
     
    Sample Output
    4
     
    Author
    Lily
     
    Source
     
    Recommend
    linle   |   We have carefully selected several similar problems for you:  2074 2054 2052 1251 2024 
    #include <bits/stdc++.h>
    using namespace std;
    set <string> myset;
    
    int main(){
    	string str;
    	while(getline(cin, str)){
    		myset.clear();
    		if(str[0] == '#')
    			break;
    		int len = str.length();
    		for(int i = 0; i < len; i++){
    			string ss = "####################################################################################";
    			int t = 0;
    			while(str[i] != ' ' && i < len){
    				ss[t++] = str[i++];
    			}
    			if(t)  //ss里面存了数据时才将ss插入到set 
    				myset.insert(ss);
    		}
    		cout << myset.size() << endl;
    	}
    	return 0;
    }
    
    #include <iostream>
    #include <sstream>
    #include <set>
    using namespace std;
    
    int main(){
    	set <string> myset; 
    	string str, t;
    	while(getline(cin, str) && str[0] != '#'){
    //		stringstream ss(str);
    		stringstream ss;
    		ss.str(str);
    		while(ss >> t){
    			myset.insert(t);
    		}
    		cout << myset.size() << endl;
    		myset.clear();
    	}
    	return 0;
    } 
    
    /*
    本题有两个注意点:就是只有ss里面存了新数据才插入到set;另一个则是对于string类型的重载的+是用于字符串间的,不能将
    字符直接相加,字符是只能是单个赋值,不能用+,但是当赋值时则需要要先保证字符串自身的长度,即需要初始化足够的长度才
    能赋值,否则会越界的!!! 
    /*
    1."              "
    0
    2."  asdf as a"
    3
    3."  asdf     asdf  ds"
    2
    4."asdf   asdf    "
    1
    5.直接输回车
    0
    */ 
    

      

  • 相关阅读:
    oracle11g expdp/impdp数据库
    SqlServer触发器
    tomcat8.5.20配置https
    oracle常用函数积累
    Eclipse 搭建tomcat+动态项目完整版
    Windows7下ftp服务器
    Orcle定时生成表数据作业
    Oracle将一列值逗号拼接wm_concat函数
    Oracle表空间 ORA-01653:
    node+mongodb+ionic+cordova
  • 原文地址:https://www.cnblogs.com/zhumengdexiaobai/p/8628439.html
Copyright © 2011-2022 走看看