#include <stdio.h>
int main()
{
char str[10000];
int sum_len=0,len=0,max_len=0;
int al=-1,ah=-1,max_al=-1,max_ah=-1;
int i=0,j=0;
int label_1=0,label_2=0;
gets(str);
sum_len=strlen(str);
for(i=0;i<=sum_len;i++)
{
if( (str[i]>=48 && str[i]<=57) || str[i]==46 || str[i]==45 || str[i]==43)//可能是数字串
{
if(str[i]==46)//小数点
{
if((str[i-1]>=48 && str[i-1]<=57) && (str[i+1]>=48 && str[i+1]<=57) && label_1==0)//两边是数字
{
label_1=1;
if(len==0)//是数字串 且 为数字串开头,记录该数字串的首位地址
al=i;
len++;
}
else
{
if(len>0)//如果前面有数字串
{
ah=i-1;//记录该数字串的末尾地址
if(len>=max_len)
{
max_len=len;//更新最大长度
max_al=al;//更新最长数字串首位地址
max_ah=ah;//更新最长数字串末尾地址
}
}
len=0;
}
}
if(str[i]==45 || str[i]==43)//加减号
{
if(!(str[i-1]>=48 && str[i-1]<=57) && (str[i+1]>=48 && str[i+1]<=57) && label_2==0)//前面不是数字,后面是数字
{
label_2=1;
if(len==0)//是数字串 且 为数字串开头,记录该数字串的首位地址
al=i;
len++;
}
else
{
if(len>0)//如果前面有数字串
{
ah=i-1;//记录该数字串的末尾地址
if(len>=max_len)
{
max_len=len;//更新最大长度
max_al=al;//更新最长数字串首位地址
max_ah=ah;//更新最长数字串末尾地址
}
}
len=0;
}
}
if(str[i]>=48 && str[i]<=57)//读取到数字
{
if(len==0)//是数字串 且 为数字串开头,记录该数字串的首位地址
al=i;
len++;
}
}
else//不可能是数字串
{
if(len>0)//如果前面有数字串
{
ah=i-1;//记录该数字串的末尾地址
if(len>=max_len)
{
max_len=len;//更新最大长度
max_al=al;//更新最长数字串首位地址
max_ah=ah;//更新最长数字串末尾地址
}
}
len=0;
}
}
for(i=max_al;i<=max_ah;i++)
{
printf("%c",str[i]);
}
}