杭电1708题为什么Wrong Answer求大牛指导,谢谢
题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1708代码是:#include<stdio.h>#include<strin...
题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1708
代码是:#include<stdio.h>
#include<string.h>
main()
{
int ri,repeat,i,j,a[27],b[27],c[27],s,n,s1,s2,k;
char ch1[51],ch2[51];
scanf("%d",&repeat);
for(ri=0;ri<repeat;ri++)
{ memset(b,0,sizeof(b));
memset(a,0,sizeof(a));
memset(c,0,sizeof(c));
k=0;
scanf("%s%s",ch1,ch2);
scanf("%d",&n);
s1=strlen(ch1);
s2=strlen(ch2);
for(i=0;i<s1;i++)
a[ch1[i]-'a']++;;
for(i=0;i<s2;i++)
b[ch2[i]-'a']++;
for(i=0;i<26;i++)
{
for(j=1;j<n;j++)
{
c[k]=a[i]+b[i];
a[i]=b[i];
b[i]=c[k];
}
printf("%c:%d\n",'a'+i,b[k]);
k++;
}
if(ri!=repeat-1)
printf("\n");
}
} 展开
代码是:#include<stdio.h>
#include<string.h>
main()
{
int ri,repeat,i,j,a[27],b[27],c[27],s,n,s1,s2,k;
char ch1[51],ch2[51];
scanf("%d",&repeat);
for(ri=0;ri<repeat;ri++)
{ memset(b,0,sizeof(b));
memset(a,0,sizeof(a));
memset(c,0,sizeof(c));
k=0;
scanf("%s%s",ch1,ch2);
scanf("%d",&n);
s1=strlen(ch1);
s2=strlen(ch2);
for(i=0;i<s1;i++)
a[ch1[i]-'a']++;;
for(i=0;i<s2;i++)
b[ch2[i]-'a']++;
for(i=0;i<26;i++)
{
for(j=1;j<n;j++)
{
c[k]=a[i]+b[i];
a[i]=b[i];
b[i]=c[k];
}
printf("%c:%d\n",'a'+i,b[k]);
k++;
}
if(ri!=repeat-1)
printf("\n");
}
} 展开
展开全部
代码思路不错,只是输出方面不符合要求罢了。
#include<stdio.h>
#include<string.h>
int main()//函数要返回整形量
{
int ri,repeat,i,j,a[27],b[27],c[27],s,n,s1,s2,k;
char ch1[51],ch2[51];
scanf("%d",&repeat);
for(ri=0;ri<repeat;ri++)
{ memset(b,0,sizeof(b));
memset(a,0,sizeof(a));
memset(c,0,sizeof(c));
k=0;
scanf("%s%s",ch1,ch2);
scanf("%d",&n);
s1=strlen(ch1);
s2=strlen(ch2);
for(i=0;i<s1;i++)
a[ch1[i]-'a']++;;
for(i=0;i<s2;i++)
b[ch2[i]-'a']++;
for(i=0;i<26;i++)
{
for(j=1;j<n;j++)
{
c[k]=a[i]+b[i]; //C数组用不着,用一个变量就够了
a[i]=b[i];
b[i]=c[k];
}
if(n == 0) //注意n == 0时输出a[]
printf("%c:%d\n",'a'+i,a[i]);
else
printf("%c:%d\n",'a'+i,b[i]);
k++;//其实k的变化和i同,right?
}
//if(ri!=repeat-1)//每一case后输出空行
printf("\n");
}
return 0;
}
#include<stdio.h>
#include<string.h>
int main()//函数要返回整形量
{
int ri,repeat,i,j,a[27],b[27],c[27],s,n,s1,s2,k;
char ch1[51],ch2[51];
scanf("%d",&repeat);
for(ri=0;ri<repeat;ri++)
{ memset(b,0,sizeof(b));
memset(a,0,sizeof(a));
memset(c,0,sizeof(c));
k=0;
scanf("%s%s",ch1,ch2);
scanf("%d",&n);
s1=strlen(ch1);
s2=strlen(ch2);
for(i=0;i<s1;i++)
a[ch1[i]-'a']++;;
for(i=0;i<s2;i++)
b[ch2[i]-'a']++;
for(i=0;i<26;i++)
{
for(j=1;j<n;j++)
{
c[k]=a[i]+b[i]; //C数组用不着,用一个变量就够了
a[i]=b[i];
b[i]=c[k];
}
if(n == 0) //注意n == 0时输出a[]
printf("%c:%d\n",'a'+i,a[i]);
else
printf("%c:%d\n",'a'+i,b[i]);
k++;//其实k的变化和i同,right?
}
//if(ri!=repeat-1)//每一case后输出空行
printf("\n");
}
return 0;
}
富港检测技术(东莞)有限公司_
2024-08-05 广告
2024-08-05 广告
作为富港检测技术(东莞)有限公司的工作人员,关于ISTA 1A、2A及3A的区别及测试项目简述如下:ISTA 1A是非模拟集中性能试验,主要进行固定位移振动和冲击测试,针对不超过68kg的包装件。ISTA 2A则在此基础上增加了部分模拟性能...
点击进入详情页
本回答由富港检测技术(东莞)有限公司_提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询