求助,为什么一直RE,谢谢
查看原帖
求助,为什么一直RE,谢谢
239823
真_小强楼主2022/4/23 12:10
#include<bits/stdc++.h>
using namespace std;

int n;
string line;
string d[105][3];
int c=1;
int q=0;
int h=-1;
int hs(int x)
{
	if(q!=0)
    {
        line+="€";
        int p=0;
        for(int k=0;k<=1005;k++)
        {
            string df;
            string m;
           	int r=0;
           	while(line[p]!=' ')
            {
                m=line[p];
                if(m=="€")
                {
                	if(h!=n)
                		cout<<endl;
                	return 0;
                }
                df+=m;
                p++;
                for(int j=0;j<=x;j++)
                {
                    if(d[j][1]==df)
                    {
                        cout<<d[j][2];
                        r=1;
                        if(line[p]!=' ')
                        {
                        	m="";
                        	df=m;
                        	r=0;
                        	break;
                        }
                    }
                }
            }
            p++;
            if(r==0)
                cout<<df;
            cout<<" ";
       	}
            cout<<endl;
    }
            q++;
}


int main()
{
    cin>>n;
    for(int i=0;i<=n;i++)
    {
        getline(cin, line);
        h++;
        line+=" ";
        if(line[0]=='#')
        {
            cout<<endl;
            if(line[1]=='d')
            {
                string df1;
                string m1;
                int p=8;
                while(line[p]!=' ')
                {
                         m1=line[p];
                         df1+=m1;
                         p++;
                         d[i][1]=df1;
                }
                p++;
                string df2;
                string m2;
                while(line[p]!=' ')
                {
                         m2=line[p];
                         df2+=m2;
                         p++;
                         d[i][2]=df2;
                }
            }
            if(line[1]=='u')
            {
                string df1;
                string m1;
                int p=7;
                while(line[p]!=' ')
                {
                         m1=line[p];
                         df1+=m1;
                         p++;
                         for(int j=0;j<=i;j++)
                         {
                             if(d[j][1]==df1)
                                d[j][1]='0';
                         }
                }
            }
        }
        else
        {
    		hs(i);
    	}
    }
    return 0;
}

请问为什么一直RE呀? 谢谢大佬们

2022/4/23 12:10
加载中...