搜索

ZOJ 14 运行正确,WA,应该是求最小X地方错了,真心求改正

发布网友 发布时间:2024-10-23 23:29

我来回答

1个回答

热心网友 时间:2024-11-01 00:17

#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,x,i,count,a;
while(scanf("%d",&n)==1) // 多组输入
{
count=0; // 初始化count
if(n%2==1)
{
a=1;
for(x=1;x<=n;x++)
{
a=a*2;
a%=n;
if(a==1)
{
count=1;
printf("2^%d mod %d = 1\n",x,n);
break; //我直接让出来一个小的x后直接break,就是最小的x。
}
}
}
if(count==0) printf("2^? mod %d = 1\n",n); // 这里错了
}
//system("pause");
return 0;
}追问已AC,非常感谢,但有一个地方不太明白。
a=a*2; a=a*2;
a%=n; if(a%d==1)
if(a==1)
为什么右边的就错了?

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
Top