【编程题目 | 100分】求满足条件的最长子串的长度 [ 2022 Q1,Q2考试题 ]


时间限制:C/C++ 1000ms | 其他语言 2000ms

空间限制:C/C++ 128MB | 其他语言 256MB

64bit IO Format:%lld


本题可使用本地IDE编码,不能使用本地已有代码。

无跳出限制,编码后请点击 “保存并提交” 按钮进行代码提交。


题目描述

【求满足条件的最长子串的长度】

给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度,字符串本身是其最长的子串,子串要求:

1、 只包含1个字母(a~z, A~Z),其余必须是数字;

2、 字母可以在子串中的任意位置;

如果找不到满足要求的子串,如全是字母或全是数字,则返回-1

输入描述:字符串(只包含字母和数字)

输出描述:子串的长度

示例1  输入输出示例仅供调试,后台判题数据一般不包含示例

输入

abC124ACb

输出

4

说明

满足条件的最长子串是C124或者124A,长度都是4

示例2  输入输出示例仅供调试,后台判题数据一般不包含示例

输入

a5

输出

2

说明

字符串自身就是满足条件的子串,长度为2

示例3   输入输出示例仅供调试,后台判题数据一般不包含示例

输入

aBB9

输出

2

说明

满足条件的子串为B9,长度为2

示例4   输入输出示例仅供调试,后台判题数据一般不包含示例

输入

abcdef

输出

-1

说明

没有满足要求的子串,返回-1


C++


#include<bits/stdc++.h>

using namespace std;

剩余50%内容,订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看

JAVA


import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String input = sc.nextLine();

        int left = 0;
        int right = 1;
        int maxLe = -1;

剩余50%内容,订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看

Python


import re

s = input()
maxLen = -1

剩余50%内容,订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看

JavaScript


let s = readLine();
//let s = "abC124ACb";
//let s = "abcdef";
let n = s.length;

剩余50%内容,订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看