杭电OJ2072查找不同的单词数,为什么我运行出来的结果是对的,但提交上去就WR呢?

#include<iostream>
#include<string>
#include<vector>
using namespace std;
int main()
{
	string s;
	while(getline(cin,s))
	{
		if(s=="#")
		{
			break;
		}
		else
		{
			vector<string> v;
			int len=s.length();
			int j=0;
			int num=0;
			string ss;
			for(int i=0;i<len;i++)
			{
				int flag=0;
				if(s[i]!=' ')
				{
					ss.push_back(s[i]);
					j++;
				}
				else if(s[i]==' ')
				{	
					if(num==0)
					{
						v.push_back(ss);
						num++;
					}
					for(int x=0;x<v.size();x++)
					{
						if(ss==v[x])
						{
							flag=0;
							break;
						}
						else
						{
							flag=1;
						}
					}
					if(flag==1)
					{
						num++;
						v.push_back(ss);
					}
					j=0;
					ss.clear();
				}
				if(i==len-1)
				{
					for(int x=0;x<v.size();x++)
					{
						if(ss==v[x])
						{
							flag=0;
							break;
						}
						else
						{
							flag=1;
						}
					}
					if(flag==1)
					{
						num++;
						v.push_back(ss);
					}
				}
			}
			cout<<num<<endl;
		}
	}
}