60分
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5,INF=1e9;
int w,f,in;//0 空行 1 段落 2 项目列表
vector<string>a;
int flag[N];
int check(string str)
{
for(int i=0;i<str.length();i++)
if(str[i]!=' ')
return 1;
return 0;
}
string process(string str)//去空格
{
int l=0,r=str.length()-1,start=0;
if(str[0]=='*'&&str[1]==' ')
{
start=2;
if(str.size()==0)
return "";
}
for(int i=start;i<str.length();i++)
if(str[i]!=' ')
{
l=i;
break;
}
for(int i=str.length()-1;i>=start;i--)
if(str[i]!=' ')
{
r=i;
break;
}
if(start==0||str.length()==2)
return str.substr(l,r-l+1);
else return "* "+str.substr(l,r-l+1);
}
int compute(string str)
{
vector<string>r;
int u=0,i=0;
if(str[0]=='*'&&str[1]==' ')
{
i=2;
while(i<str.length())
{
while(str[i]==' ') i++;
string s=str.substr(i,w-3);
//cout<<s<<endl;
r.push_back(s);
i=i+w-3;
}
if(str.length()==2)
r.push_back("123");
}
else
while(i<str.length())
{
while(str[i]==' ') i++;
string s=str.substr(i,w);
//cout<<s<<endl;
r.push_back(s);
i=i+w;
}
return r.size();
}
int main()
{
string str;
cin>>w;
getchar();
while(getline(cin,str))
{
int g=check(str);
//cout<<g<<endl;
if(g&&str[0]=='*'&&str[1]==' ')
{
a.push_back(process(str));
//cout<<process(str)<<endl;
in++;
f=2;
flag[in-1]=2;
}
else if(g&&f==2&&str[0]==' '&&str[1]==' ')
a[in-1]+=" "+process(str);
else if(g&&(f==0||f==2))
{
a.push_back(process(str));
in++;
f=1;
flag[in-1]=1;
}
else if(g&&f==1)
a[in-1]+=" "+process(str);
else if(!g)
f=0;
}
int sum=0;
//cout<<a[0]<<endl;
for(int i=0;i<a.size();i++)
{
sum+=compute(a[i]);
if(i>0)
{
if(flag[i-1]==2&&flag[i]==1)
sum++;
if(flag[i-1]==1&&flag[i]==2)
sum++;
if(flag[i-1]==1&&flag[i]==1)
sum++;
}
//cout<<compute(a[i])<<endl;
}
cout<<sum<<endl;
return 0;
}