以下是我的代码,提交不通过(显示wrong answer),是这种方法不行吗?
#include<stdio.h>
int main(int argc, char* argv[])
{
int n; //一组中数的个数
int s[1000];
int i;
int x; //用于存储一组数中的最大数
while (scanf("%d",&n)!=EOF)
{
x = 0
for (i = 0; i < n; i++)
{
scanf("%d",&s[i]);
if (s[i]>x)
x = s[i];
}
while(1)
{
for (i = 0; i < n; i++)
{
if (x%s[i]!=0)
break;
}
if(i >= n)
break;
x++;
}
printf("%d\n",x);
}
return 0;
}
修正后在线编译正确
最大公倍数是什么,只有最大公约数最小公倍数,你到底算什么。这是其一,其二,你的oj约定的输入输出格式,对于时间空间的限制、最大数据规模,输入数据范围等是什么也没说。
x = 0 这里少一个分号
32位的整数需不需要修改下输出的整数范围,修改成long long int 比较稳妥,没有看具体代码,,
经过调试发现你的for语句前面好像少了;
题目要求最小公倍数,你这代码是求了最大公约数了吧