永发信息网

Uva OJ 401 - Palindromes 答案是对的,输出格式也是对的,为什么不管怎么改都是WA,求高手

答案:1  悬赏:60  手机版
解决时间 2021-03-29 20:59
Uva OJ 401 - Palindromes 答案是对的,输出格式也是对的,为什么不管怎么改都是WA,求高手
最佳答案
你程序的问题应该是无法输出mirrored string的情况吧
我改了两个地方现在可以输出mirrored string的情况了
你可一自己试一下
有问题再交流

#include
#include

char str[100];

int main(void)
{
int i, k, l;
char *p;
char *s = "AAE3EHHIIJLJMMOOS2STTUUVVWWXXYYZ5Z1188";
int b1, b2;

while(scanf("%s", str) != EOF)
{
b1 = 1;
b2 = 1;
l = strlen(str);

if(l == 1)
{
if((p = strchr(s, str[0])) == NULL)
b2 = 0;
else
{
k = p - s;
if(str[0] != s[k + 1])
b2 = 0;
}
}

for(i = 0; i < l ; i++) <--一个在这里

{
if(str[i] != str[l - i - 1])
{
b1 = 0;
if ((p = strchr(s, str[i])) == NULL)
{
b2 = 0;
break;
}
else
{
k = p - s;
//cmp one by one
if(s[k] != str[i]) <-- 一个在这里

{
b2 = 0;
break;
}
}
}
else if(strchr(s, str[i]) == NULL)
b2 = 0;
}

if(b1 == 0 && b2 == 0)
printf("%s -- is not a palindrome.", str);
else if(b1 == 0 && b2 == 1)
printf("%s -- is a mirrored string.", str);
else if(b1 == 1 && b2 == 0)
printf("%s -- is a regular palindrome.", str);
else
printf("%s -- is a mirrored palindrome.", str);
printf("\n");
}
return 0;
}追问你说输不出哪个mirrored string?
输入2A3MEAS本来是输出mirror string的,这个是标准答案。你改了之后就输错了,恰恰相反。。。。追答[zzq@zzq-pc help]$ ./a.out
2A3MEAS
2A3MEAS -- is a mirrored string.

以上是在我这里输出的

================================
这是我用你的程序输出的结果
[zzq@zzq-pc help]$ ./a.out
2A3MEAS
2A3MEAS -- is a mirrored string.

AAE
AAE -- is not a palindrome.

AAE 应该也是miirrored string的,是这里输出的是not a palindrome

=======================================
这是我修改后输出的结果
[zzq@zzq-pc help]$ ./a.out
2A3MEAS
2A3MEAS -- is a mirrored string.
AAE
AAE -- is a mirrored string.
SAE
SAE -- is a mirrored string.追问晕,看错,把你改得地方i看成l 了,我再试试追答具体是什么问题呢,可以说清楚一点;我看你的程序只发现这个问题。另,AC我不知道什么意思

最好是直接复制过去,这样就不会出错了追问AC是Accepted 的意思,WA是Wrong answer的意思。你有上过UVAOJ吗?提交程序的时候,会有结果出来的,但改过之后还是WA,也不知道怎么回事,我再想想。追答哦,原来是这样;我没有上过这个,那就要好好看看它对算法的要求了;我没看那个要求,可能很多地方都没有考虑到。我只是根据你的程序来判断程序的要求的追问晕,你题目都没看吧?

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&category=&problem=342
这个是这道题的网址。另外AAE和SAE什么都不是。追答看了题目,做了一下;把网站上提供的几个例子做了试了一下,结果是对的

[zzq@zzq-pc help]$ ./a.out
ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789
A...3..HIL.JM.O...2TUVWXY51SE.Z..8.
ISAPALINILAPASI
ISAPALINILAPASI -- is a regular palindrome.
NOTAPALINDROME
NOTAPALINDROME -- is not a palindrome.
2A3MEAS
2A3MEAS -- is a mirrored string.
ATOYOTA
ATOYOTA -- is a mirrored palindrome.追问我答案也是对,对又没用,AC了才是对的。我找不出有什么错误,才叫你帮忙的。追答我把代码给你参考一下吧
实在不行就只有等高手了,我也会关注的



追问我想知道我为什么错的啊,这个比别人为什么是对的要重要啊,网上的代码也很多,我都参考过了,就是发现不了我的为什么不能AC。追答我试着上传了一下我的代码,
就来一句这个:


Submission received with ID 11883315


这是怎么回事,我没有看到WA或AC
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
历年高考普通班考得最好的成绩是多少
Win8系统如何进入脱机模式,谢谢
刚到北京有什么青年公寓可以推荐的吗?
辽写出这个字的同音,分别组词为
这是一个学术讲座的视频,谁能帮我把全集下载
恋爱禁止的世界
什么是珠脑算?什么是珠心算?珠脑算和珠心算
故城县钰鑫帆布制品有限公司在哪里啊,我有事
急求快餐店宣传语!!!
开个规模中等的茶楼需要资金多少?
海阳幼儿园这个地址在什么地方,我要处理点事
Themangotoffthehorseand________i
蒸茄子需要多长时间
如果一个女的只愿意和你在网络上聊天不愿意见
市电频率为什么不同
推荐资讯
从xxx到xxx怎么用英语
自家的歙砚茶盘,求大神看看值多少
脂肪和油的区别在哪里?举例说明
20000块钱10%的利率一年的利息是多少钱
围棋高手在奕城的网名
“弹屏”“弹幕”的弹是念“tán”还是“dàn
厦门隐形矫正,厦门牙齿矫正哪家好
三生互联网直销上钻石了,周薪能赚多少钱
L-Edit 如何多次等距排列一个相同的Cell
大智慧里面黄金趋势与黄金阶梯 是一个指标吗
龙湖地产怎么样?做仕官生的发展前景好吗?
电脑音响有两条这样的线,怎么插电脑。。
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?