蒟蒻求助

P1241 括号序列

EarthGiao @ 2019-03-24 09:58:34

下面是我63分的

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
char a[101];
bool use[101];//判断是否匹配成功 
int main()
{
    gets(a);
    int l=strlen(a);
    memset(use,false,sizeof(use));
    for(int i=0;i<l;++i)
    {
        if(a[i]=='('||a[i]=='[')
        {
            for(int j=i+1;j<l;j++)
            {
                if(use[j]==false&&((a[i]=='('&&a[j]==']')||(a[i]=='['&&a[j]=='(')))break;
                else
                if(use[j]==false&&((a[i]=='('&&a[j]==')')||(a[i]=='['&&a[j]==']')))
                {
                    use[i]=use[j]=true;
                    break;
                }
            }
        }
    }
    for(int k=0;k<l;++k)
    {
        if(!use[k])//未匹配成功的 
        {
            if(a[k]=='('||a[k]==')')cout<<'('<<')';
            else
            if(a[k]=='['||a[k]==']')cout<<'['<<']';
        }
        else
        cout<<a[k];//匹配成功的直接输出 
    }
    return 0;
}

下面是我100分的

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
char a[101];
bool use[101];//判断是否匹配成功 
int main()
{
    gets(a);
    int l=strlen(a);
    memset(use,false,sizeof(use));
    for(int i=0;i<l;++i)
    {
        if(a[i]==')'||a[i]==']')
        {
            for(int j=i-1;j>=0;j--)
            {
                if(use[j]==false&&((a[i]==')'&&a[j]=='[')||(a[i]==']'&&a[j]=='(')))break;
                else
                if(use[j]==false&&((a[i]==')'&&a[j]=='(')||(a[i]==']'&&a[j]=='[')))
                {
                    use[i]=use[j]=true;
                    break;
                }
            }
        }
    }
    for(int k=0;k<l;++k)
    {
        if(!use[k])//未匹配成功的 
        {
            if(a[k]=='('||a[k]==')')cout<<'('<<')';
            else
            if(a[k]=='['||a[k]==']')cout<<'['<<']';
        }
        else
        cout<<a[k];//匹配成功的直接输出 
    }
    return 0;
}

不就是查找顺序不同吗为什么会有这么大的差距,求大佬告知!


by Soroak @ 2019-03-24 11:28:58

@EarthGiao

不知道


by 拈花卜笑 @ 2019-07-28 09:53:33

考古


by D447H @ 2020-02-29 12:46:28

考古


by dddk @ 2020-04-15 10:52:54

考古


|