c++ 新技能get 统计单词数

来源:互联网 发布:淘宝上论文发表靠谱吗 编辑:程序博客网 时间:2024/06/05 20:33


123

DongDong prefers English words to English sentences, so he wants to count the words of a sentence. Could you help him?

输入

The first line contains a positive integer T (T<=1000), which means T test cases. Then comes T lines, each line contains a string which combines with several words separated by spaces. Note that there may be more than one space to separate two words.

输出

For each test case, please print the number of words of the sentence.

样例输入

3 
Every night in my dreams  
 I see you  I feel you   
That  is  how I know you go on

样例输出

5
6
8

2


c++  有一个函数 叫做 stringsteam  统计单词个数  头文件 <sstream>


#include <bits/stdc++.h>#include <iostream>#include <stdio.h>#include <algorithm>#include <cmath>#include <math.h>#include <cstring>#include <string>#include <queue>#include <deque>#include <stack>#include <stdlib.h>#include <list>#include <map>#include <set>#include <bitset>#include <vector>#define mem(a,b) memset(a,b,sizeof(a))#define findx(x) lower_bound(b+1,b+1+bn,x)-b#define FIN      freopen("input.txt","r",stdin)#define FOUT     freopen("output.txt","w",stdout)#define S1(n)    scanf("%d",&n)#define SL1(n)   scanf("%I64d",&n)#define S2(n,m)  scanf("%d%d",&n,&m)#define SL2(n,m)  scanf("%I64d%I64d",&n,&m)#define Pr(n)     printf("%d\n",n)#define lson rt << 1, l, mid#define rson rt << 1|1, mid + 1, r#define  FI(n) IO::read(n)#define  Be IO::begin()using namespace std;typedef long long ll;const double PI=acos(-1);const int INF=0x3f3f3f3f;const double esp=1e-6;const int maxn=1e6+5;const int MAXN=50005;const int MOD=1e9+7;const int mod=1e9+7;int dir[5][2]={0,1,0,-1,1,0,-1,0};namespace IO {const int MT = 5e7;char buf[MT]; int c,sz;void begin(){c = 0;sz = fread(buf, 1, MT, stdin);//一次性输入}template<class T>inline bool read(T &t){while( c < sz && buf[c] != '-' && ( buf[c]<'0' || buf[c] >'9')) c++;if( c>=sz) return false;bool flag = 0; if( buf[c]== '-') flag = 1,c++;for( t=0; c<=sz && '0' <=buf[c] && buf[c] <= '9'; c++ ) t= t*10 + buf[c]-'0';if(flag) t=-t;return true;}}ll inv[maxn*2];inline void ex_gcd(ll a,ll b,ll &d,ll &x,ll &y){if(!b){ x=1; y=0; d=a; }else{ ex_gcd(b,a%b,d,y,x); y-=x*(a/b);};}inline ll gcd(ll a,ll b){ return b?gcd(b,a%b):a;}inline ll exgcd(ll a,ll b,ll &x,ll &y){if(!b){x=1;y=0;return a;}ll ans=exgcd(b,a%b,x,y);ll temp=x;x=y;y=temp-a/b*y;return ans;}inline ll lcm(ll a,ll b){ return b/gcd(a,b)*a;}inline ll qpow(ll x,ll n){ll res=1;for(;n;n>>=1){if(n&1)res=(res*x)%MOD;x=(x*x)%MOD;}return res;}inline ll inv_exgcd(ll a,ll n){ll d,x,y;ex_gcd(a,n,d,x,y);return d==1?(x+n)%n:-1;}inline ll inv1(ll b){return b==1?1:(MOD-MOD/b)*inv1(MOD%b)%MOD;}inline ll inv2(ll b){return qpow(b,MOD-2);}int main(){    int T;    cin>>T;    getchar();    while(T--)    {        int ans=0;        char str[maxn];        char temp[maxn];        gets(str);        stringstream ss(str);        while(ss>>temp)            ans++;        printf("%d\n",ans);    }    return 0;}


原创粉丝点击