当前位置: 代码迷 >> 综合 >> uva-10361-Automatic Poetry
  详细解决方案

uva-10361-Automatic Poetry

热度:0   发布时间:2023-12-19 11:46:58.0

这道题目我就把两个<和两个>的位置标记下来,然后按要求输出,还是比较简单的~~~~

让我很高兴的是,1A了~、

#include<stdio.h>
#include<string.h>
void print(char *str1,char *str2)
{
int nn1,nn2;
int n1,n2,n3,n4;
int leap,i;
nn1=strlen(str1);
nn2=strlen(str2);
leap=0;
for(i=0;i<nn1;i++)
{
if(leap==0)
{
if(str1[i]=='<')
n1=i;
if(str1[i]=='>')
{
n2=i;
leap=1;
}
}
else
{
if(str1[i]=='<')
n3=i;
if(str1[i]=='>')
n4=i;
}
}
for(i=0;i<nn1;i++)
{
if(i!=n1&&i!=n2&&i!=n3&&i!=n4)
printf("%c",str1[i]);
}
printf("\n");
for(i=0;i<nn2;i++)
{
if(str2[i]=='.')
{
for(i=n3+1;i<n4;i++)
{
printf("%c",str1[i]);
}
for(i=n2+1;i<n3;i++)
{
printf("%c",str1[i]);
}
for(i=n1+1;i<n2;i++)
{
printf("%c",str1[i]);
}
for(i=n4+1;i<nn1;i++)
{
printf("%c",str1[i]);
}
break;
}
else
{
printf("%c",str2[i]);
}
}
printf("\n");
}
int main()
{
int n;
char str1[10000];
char str2[10000];
scanf("%d%*c",&n);
while(n--)
{
gets(str1);
gets(str2);
print(str1,str2);
}
return 0;
}


 

  相关解决方案