全WA求助!!!
  • 板块P2814 家谱
  • 楼主justinjia
  • 当前回复0
  • 已保存回复0
  • 发布时间2021/4/24 09:58
  • 上次更新2023/11/5 00:11:32
查看原帖
全WA求助!!!
373226
justinjia楼主2021/4/24 09:58

献上本蒟蒻的代码:

#include<cstdio>
#include<map>
#include<utility>
#include<cstring>
using namespace std;
map<char*,char*>family;
char*find_ancestor(char*name){
    static char*ans;
    if(!family.count(name))
        ans=name;
    else
        ans=find_ancestor(family[name]);
    return ans;
}
int main(void){
    family.clear();
    char a[10],op,name[10],father[10];
    while(1){
        scanf("%s",a);
        sscanf(a,"%c%s",&op,name);
        if(op=='$')
        	break;
        else if(op=='#')
            memcpy(father,name,sizeof(name));
        else if(op=='+'){
            family.insert(make_pair(name,father));
            //printf("father:%s son:%s\n",family[name],name);
        }
        else if(op=='?')
            printf("%s %s\n",name,find_ancestor(name));
    }/*
    printf("size:%d\n",family.size());
    for(map<char*,char*>::iterator it=family.begin();it!=family.end();it++)
    	printf("father:%s son:%s\n",it->second,it->first);*/
    return 0;
}
2021/4/24 09:58
加载中...