3020 - 文本找数 (d.cpp)

题目描述

正当小 X 带着大家玩三角形游戏的时候,小 Y 在编程中遇到了一个难题,来请教小X。小Y遇到的难题是需要在一行文本中找最大的数,这一行文本中有整数和实数,也有字母、空格等其它各种字符。这一行文本最多包括 10000 个字符,其中每个数的长度不超过 100(包括小数点),所有的数都没有正负符号,并且没有前导 0 ,所谓前导 0 是指一个数中开头可以省略的 0 ,如 007 中的两个 0 就是前导 00.618 中小数点前的 0 不是前导 0

也就是说文本中出现的整数必定是一串连续的阿拉伯数字,除了 0 以外所有整数的首位一定不是 0 。文本中出现的实数必定是一串连续的阿拉伯数字并且中间夹杂着一个唯一的小数点,该小数点两侧必须是数字,并且小数点左侧一定是上文所述的整数。

输入

输入数据仅有一行包含一个字符串,表示要查找的文本。保证文本中小数点的前后位置一定都是数字,并且不存在一串连续的阿拉伯数字的前后各有一个小数点的情况,像 “120.78.90.206” 这样的字符串是不可能出现在文本中的。

输出

一行一个整数或实数(按照文本中原来的样子原封不动输出)。如果最大的数不只一个,则输出长度最长的那个数。

样例

输入

120 315 513 512 153 0

输出

513

输入

5r2.1q 4p 3.77442qw cock5.0$

输出

5.0
说明

样例解释

对于样例 1,有 120、315、513、512、153、0 六个数,最大的数为 513

对于样例 2,有 5、2.1、4、3.77442、5.0 五个数,最大的数有两个,5.0 的长度更长。

数据范围

对于 10\% 的数据,文本为用空格隔开的若干个非负整数(范围在 int 以内),且最后一个数为 0 ,其余的数都不为 0

对于另外 40\% 的数据,文本中不包含小数点。

对于 100\% 的数据,文本长度 ≤10000,单个数的长度≤100

来源

2022常州市“信息与未来”程序设计小能手

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 89
通过人数 30
金币数量 2 枚
难度 基础


上一题 下一题