50分求助啊啊啊谢谢大佬

P1200 [USACO1.1] 你的飞碟在这儿 Your Ride Is Here

希望更丰富的展现?使用Markdown
by Hallucination @ 2018-11-12 17:45:50


#include <stdio.h> int main() { int c,mpl=1,a=1; while ((c=getchar())!='\n'){ mpl*=(c-'@'); mpl%=47; } while ((c=getchar())!=EOF){ a*=(c-'@'); a%=47; } if(a==mpl) printf("GO"); else printf("STAY"); return 0; }
by xl0095 @ 2018-11-12 17:46:08


@[Tony·Stark](/space/show?uid=93909) ???????????
by xl0095 @ 2018-11-12 17:46:27


``` #include <stdio.h> int main() { int c,mpl=1,a=1; while ((c=getchar())!='\n'){ mpl*=(c-'@'); mpl%=47; } while ((c=getchar())!=EOF){ a*=(c-'@'); a%=47; } if(a==mpl) printf("GO"); else printf("STAY"); return 0; } ```
by yummy @ 2018-11-12 17:47:14


@[xl0095](/space/show?uid=149398) 部分$Markdown$可海星(逃)
by Chiaro @ 2018-11-12 17:47:25


@[鸩羽_](/space/show?uid=78456) 哈哈哈求大佬赐教
by xl0095 @ 2018-11-12 17:49:34


@[xl0095](/space/show?uid=149398) 第一个您把 $mod$ 运算放到最后 第二个您的``mpl*=(c-'@'); ``似乎有问题 写成 ``mpl*=(c-'A'+1)``就可以了
by Chiaro @ 2018-11-12 18:05:43


然后我给您改的代码 ```cpp #include <stdio.h> int main(){ int c,mpl=1,a=1; while ((c=getchar())!='\n'){ mpl*=(c-'A'+1); } while ((c=getchar())!='\n'){ a*=(c-'A'+1); } if(a%47==mpl%47) printf("GO\n"); else printf("STAY\n"); return 0; } ```
by Chiaro @ 2018-11-12 18:07:00


@[xl0095](/space/show?uid=149398) 还有个问题是您的第二个$while$终止条件应该是``c!='\n'``而不是``c!=EOF`` 如果是``c!=EOF``可能会把文件末尾的换行符读进去
by Chiaro @ 2018-11-12 18:08:56


@[鸩羽_](/space/show?uid=78456) 哇哇哇谢谢 换成'\n'就过了 谢谢大佬 @就是A的前一个
by xl0095 @ 2018-11-12 18:53:35


| 下一页