Xiaomi的遗憾 2023-11-26 12:00 采纳率: 100%
浏览 8
已结题

string字符串:最大价值(c++)问题

题目描述
给定一个只包含字符T和字符X的字符串S。其中字符T的价值为0,字符X的价值等于其右侧与其直接相邻的连续T个数。
例如,TXTXXTT 中第1个X的价值为1,第2个X的价值为0,第3个X的价值为2。
字符串S的最大价值定义为:字符串S中价值最大的字符的价值。
请你计算字符串S的最大价值。

输入
第一行一个整数T,表示共有T组测试数据;
每组数据一行,一个字符串S,字符串中的每个字符要么是T,要么是X。
输出
每组数据输出一行结果,一个整数,表示字符串S中的最大价值。

样例输入
2
TXTXXTT
TTXT
样例输出
2
1
提示
数据范围:
对60% 的数据保证:1≤T≤10,1≤∣S∣≤5×10^3;
对100% 的数据保证:1≤T≤50,1≤∣S∣≤2×10^5,其中∣S∣表示字符串S的长度。
有人能做出来吗?有谁能做出来?请用C++做!不得用python,c语言做!

  • 写回答

2条回答 默认 最新

  • micthis 2023-11-26 13:59
    关注
    #include <iostream>
    #include <string>
    using namespace std;
    
    int main()
    {
        int n,j,maxv=0,tempv;
        string s;
        cin>>n;
        for(;n>0;n--)
        {
            getline(cin,s);
            for(int i=0;i<s.length();i++)
            {
                if(s[i]=='X')
                {
                    tempv=0;
                    for(j=i+1;j<s.length()&&s[j]=='T';j++)
                        tempv++;
                    if(tempv>maxv)
                        maxv=tempv;
                    i=j-1;
                }
            }
            cout<<maxv<<endl;
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月4日
  • 已采纳回答 11月26日
  • 修改了问题 11月26日
  • 创建了问题 11月26日

悬赏问题

  • ¥15 如何让子窗口鼠标滚动独立,不要传递消息给主窗口
  • ¥15 如何能达到用ping0.cc检测成这样?如图
  • ¥15 关于#DMA固件#的问题,请各位专家解答!
  • ¥15 matlab生成的x1图不趋于稳定,之后的图像是稳定的水平线
  • ¥15 请问华为OD岗位的内部职业发展通道都有哪些,以及各个级别晋升的要求
  • ¥20 微信小程序 canvas 问题
  • ¥15 系统 24h2 专业工作站版,浏览文件夹的图库,视频,图片之类的怎样删除?
  • ¥15 怎么把512还原为520格式
  • ¥15 MATLAB的动态模态分解出现错误,以CFX非定常模拟结果为快照
  • ¥15 求高通平台Softsim调试经验