1 条题解

  • 0
    @ 2025-4-12 21:50:59

    C :

    #include<stdio.h>
    #include<string.h>
    char s1[32],s2[32];
    void cal(int a1,int a2,int len)
    {
    	if(len<=0)return;
    	int i;
    	for(i=0;i<len&&s2[a2+i]!=s1[a1];i++);
    	cal(a1+1,a2,i);
    	cal(a1+i+1,a2+i+1,len-i-1);
    	putchar(s1[a1]);
    }
    int main()
    {
    	int n;
    	while(scanf("%s %s",&s1,&s2)!=EOF)
    	{
    		n = strlen(s1);
    		cal(0,0,n);
    		puts("");
    	}
    	return 0;
    }
    

    C++ :

    #include<stdio.h>
    #include<string.h>
    
    char s1[32],s2[32];
    
    void cal(int a1,int a2,int len) {
    	if (len<=0) return ;
    	int i;
    	for(i=0;i<len && s2[a2+i]!=s1[a1];i++);
    	cal(a1+1,a2,i);
    	cal(a1+i+1,a2+i+1,len-i-1);
    	putchar(s1[a1]);
    }
    
    int main() {
    	int n;
    	while(scanf("%s %s",s1,s2)!=EOF) {
    		n=strlen(s1);
    		cal(0,0,n);
    		puts("");
    	}
    	return 0;
    }
    
    
    • 1

    信息

    ID
    1871
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者