hdu 2028我测试正确,为什么提示wrong answer啊?求n个数的最小公倍数.最后输入32位整数怎么实现啊?Input输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数.Output为每组测试
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/30 23:50:31
![hdu 2028我测试正确,为什么提示wrong answer啊?求n个数的最小公倍数.最后输入32位整数怎么实现啊?Input输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数.Output为每组测试](/uploads/image/z/13882471-7-1.jpg?t=hdu+2028%E6%88%91%E6%B5%8B%E8%AF%95%E6%AD%A3%E7%A1%AE%2C%E4%B8%BA%E4%BB%80%E4%B9%88%E6%8F%90%E7%A4%BAwrong+answer%E5%95%8A%3F%E6%B1%82n%E4%B8%AA%E6%95%B0%E7%9A%84%E6%9C%80%E5%B0%8F%E5%85%AC%E5%80%8D%E6%95%B0.%E6%9C%80%E5%90%8E%E8%BE%93%E5%85%A532%E4%BD%8D%E6%95%B4%E6%95%B0%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E5%95%8A%3FInput%E8%BE%93%E5%85%A5%E5%8C%85%E5%90%AB%E5%A4%9A%E4%B8%AA%E6%B5%8B%E8%AF%95%E5%AE%9E%E4%BE%8B%2C%E6%AF%8F%E4%B8%AA%E6%B5%8B%E8%AF%95%E5%AE%9E%E4%BE%8B%E7%9A%84%E5%BC%80%E5%A7%8B%E6%98%AF%E4%B8%80%E4%B8%AA%E6%AD%A3%E6%95%B4%E6%95%B0n%2C%E7%84%B6%E5%90%8E%E6%98%AFn%E4%B8%AA%E6%AD%A3%E6%95%B4%E6%95%B0.Output%E4%B8%BA%E6%AF%8F%E7%BB%84%E6%B5%8B%E8%AF%95)
hdu 2028我测试正确,为什么提示wrong answer啊?求n个数的最小公倍数.最后输入32位整数怎么实现啊?Input输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数.Output为每组测试
hdu 2028我测试正确,为什么提示wrong answer啊?
求n个数的最小公倍数.
最后输入32位整数怎么实现啊?
Input
输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数.
Output
为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行.你可以假设最后的输出是一个32位的整数.
Sample Input
2 4 6
3 2 5 7
Sample Output
12
70
我的代码:
#include
main()
{
long n,i,k,t,r,p,max;
long a[100];
while(scanf("%d",&n)!=EOF)
{
max=1;
for(i=1;i
hdu 2028我测试正确,为什么提示wrong answer啊?求n个数的最小公倍数.最后输入32位整数怎么实现啊?Input输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数.Output为每组测试
你的思路有点没明白,但你的max 有可能会超范围;
说下我的思路:a * b / a 和 b 的最大公约数 = a 和 b 的最小公倍数
a, b, c的最小公倍数 = (a b) 的最小公倍数 和 c 的最小公倍数
我的代码:
#include
int gcd (int a, int b);
int main ()
{
int i;
int n;
int a, value, temp;
while (scanf ("%d", &n) == 1)
{
value = 1;
for (i = 0; i < n; i ++)
{
scanf ("%d", &a);
temp = gcd (value, a);
value = value / temp * a;
}
printf ("%d\n", value);
}
return 0;
}
int gcd (int a, int b)
{
if (a % b != 0)
{
return gcd (b, a % b);
}
return b;
}