问题标题: 酷町堂:2826 寻找数字

0
0
已解决
董宇昊
董宇昊
初级启示者
初级启示者

2826   寻找数字

题目描述 Description

给出一个字符串,仅由字母(大写或小写)和数字组成。试找出并输出这个字符串中最大的一个数字。

输入描述 Input Description

一个字符串

输出描述 Output Description

这个字符串中最大的数字

样例输入 Sample Input

 

abc123d1234f

样例输出 Sample Output

 

1234

数据范围及提示 Data Size & Hint

字符串中的数字范围不超过int


0
已采纳
李瑞曦
李瑞曦
高级天翼
高级天翼

这个不是课堂练习吗?

难道····你上课在刷问答(本人猜测你正在上课)

或者,你现在没有上课,在做假期大礼包1???

如果都不是,那我可以告诉你:

假期大礼包1有这一题哦!

如果我说的你都知道,

那我只能说:

再见啦!

【嘻嘻】

1
赵逸凡
赵逸凡
初级启示者
初级启示者

直接用stringstream按位数转换即可。

话说现在遇到一题就直接问代码和思路吗?都不思考吗? @王子健 你怎么不说他水呢?

 

0
0
陈振轩
陈振轩
高级光能
高级光能
遍历字符串
  判断连续的数字字符,将连续的数字字符串截取,转化成数字,比较出最大的数字

思路↑

    for(int i=0; i<str.size(); i++){
        if(str[i]>='0' && str[i]<='9'){
            num[n]+=str[i];
            if(str[i+1]<'0' || str[i+1]>'9')
                n++;
        }
    }
    for(int i=1; i<=n; i++){
        a[i]=StrToInt(num[i]);
    }
    sort(a+1, a+1+n);

核心↑

0
杜智宸
杜智宸
中级光能
中级光能
  • for(int i=0;i<s.size();i++){
  • if(s[i]>='0'&&s[i]<='9'){
  • ans=ans*10+s[i]-'0';
  • }
  • else{
  • maxn=max(maxn,ans);
  • ans=0;
  • }
  • }

定义,输出自己写

0
邓涵睿
邓涵睿
中级天翼
中级天翼

代码肯定是不可能的了。

你用max函数判断不就行了吗?

0
0
0
我要回答