UV1585

UVa1585得分


在这里插入图片描述
分析:原本想着要一个个挨着去找连续出现的O的个数,结果发现,其实直接就是动态规划吖,dp[i]就是到这一位时连续出现的O的个数。
代码:

#include <iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    while(n--)
    {
        string a;
    int sum=0;
    cin>>a;
    int i=0,len=a.length(),j=0;
    int b[len];
    for(i=0;i<len;i++)
    {
        if(a[i]=='X')
        {
            b[i]=0;
        }
        else if(a[i]=='O')
        {
            b[i]=1;
        }
    }
    for(i=1;i<len;i++)
    {
        if(a[i]=='O')
        {
            b[i]+=b[i-1];
        }
    }
    for(i=0;i<len;i++)
    {
        sum+=b[i];
    }
    cout<<sum<<'\n';
    }
    return 0;
}

由于UVa的网站太难进了,所以没有测试,先暂时保存一下草稿吧。
作为一个开始,以后都要认真解题,总结经验

发布了11 篇原创文章 · 获赞 0 · 访问量 123

猜你喜欢

转载自blog.csdn.net/weixin_43215032/article/details/82764823