WA
查看原帖
WA
1349739
linrun0504楼主2024/10/5 03:15
#include<bits/stdc++.h>
using namespace std;
int T1,dh[101],r[11],c[11];
string e[11][101][11],bt[101][11],name[11];
int which1(string g){
    for(int i=1;i<=T1;i++){
        if(name[i]==g) return i;
    }
}
int findlist(int n,string g){
    for(int i=1;i<=r[n];i++){
        if(bt[n][i]==g){
            return i;
        }
    }
}
int main(){
    freopen("P10486.in","r",stdin);
    freopen("P10486.out","w",stdout);
    cin>>T1;
    cout<<2323;
    for(int i=1;i<=T1;i++){
        cin>>name[i];
        int x,y;
        cin>>x>>y;
        r[i]=x-1,c[i]=y;
        for(int j=1;j<=y;j++) cin>>bt[i][j];
        for(int j=1;j<=x;j++){
            for(int k=1;k<=y;k++){
                cin>>e[i][j][k];
            }
        }
    }
    int T2;
    cin>>T2;
    for(int i=1;i<=T2;i++){
        memset(dh,0,sizeof(dh));
        string q1,q2,q3;
        cin>>q1>>q1;
        cin>>q2>>q2;
        cin>>q3>>q3;
        int cnt=0;
        for(int j=0;j<=q1.size();j++){
            if(q1[j]==',') dh[++cnt]=j;
        }
        int wb=which1(q2);
        int q31=q3.find('=');
        string p1=q3.substr(0,q31),p2=q3.substr(q31+1);
        int wd=findlist(wb,p1);
        for(int j=1;j<=r[wb];j++){
            if(e[wb][j][wd]==p2){
                if(cnt==0){
                    cout<<e[wb][j][findlist(wb,q1)]<<" ";
                }
                else{
                    for(int cn=1;cn<=cnt+1;cn++){
                        string tb;
                        if(cn==1) tb=q1.substr(0,dh[cn]);
                        else if(cn==cnt+1) tb=q1.substr(dh[cn-1]+1);
                        else tb=q1.substr(dh[cn-1]+1,dh[cn]-dh[cn-1]-1);
                        cout<<e[wb][j][findlist(wb,tb)]<<" ";
                    }
                }
                cout<<"\n";
            }
        }
    }
    return 0;
}

2024/10/5 03:15
加载中...