[洛谷]P 1738洛谷のフォルダ(#STL)


タイトルの説明
kkksc 03は非凡な空想家です!短時間で多くのページを想定し、かわいそうなlznに任せて実現した.
洛谷のページ端には、フォルダがたくさんあり、フォルダにはフォルダがセットされています.
たとえば、/luogu/アプリケーション/controllerは、ルートディレクトリの下にluoguという名前のフォルダがあり、このフォルダの下にアプリケーションという名前のフォルダがあり、controllerという名前のフォルダもあります.
各パスの1番目の文字は常に'/'であり、2つの連続した'/'はなく、最後の文字は'/'ではありません.すべての名前には、数字と小文字のみが含まれます.
現在、ルートディレクトリは空です.kkksc 03は、あるべきフォルダパス名をたくさん考えました.問題は、これらのフォルダをすべて存在させるには、いくつかのフォルダを新規作成する必要がありますか?
入力フォーマット
ファイル1行目の正の整数Nを入力します.
次のN行は、行ごとにパスを記述する文字列であり、長さは100を超えない.
出力フォーマット
出力にはN行が含まれ、行ごとに正の整数が1つ、i行目の出力は1番目のパスからi番目のパスを存在させるには、少なくとも何個のフォルダを新規作成する必要があります.
入出力サンプル
入力#1コピー
2
/luogu/application/controller
/luogu/application/view

出力#1コピー
3
4

入力#2コピー
3
/chicken
/chicken/egg
/chicken

出力#2コピー
1
2
2

入力#3コピー
4
/a
/a/b
/a/c
/b/b

出力#3コピー
1
2
3
5

説明/ヒント
データ規模:
すべてのデータについて、N<=1000.
20%のデータに対して、N<=20がある.
50%のデータに対して、N<=200がある.
30%のデータについては、すべてのパスに対して最大2つの'/'(1文字目を含む)が存在します.
構想
フォルダ名が重複する可能性があるのでsetでできます.
#include 
#include 
#include 
#include 
using namespace std;
set st[51];
string a,b;
int n,s;
signed main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	register int i,j;
	cin>>n;
	for(i=0;i>a;
		int cnt(0);
		b="";
		for(j=1;j