-3
我已经编写了一个代码来查找数字的GCD和LCM,但每当我在codechef上提交它说超出了时间限制。如何成功提交?成功执行,但在代码上传时超出了时间限制
#include <iostream>
using namespace std;
int main() {
int long long n1, n2, hcf,lcm,tc;
cin>>tc;
while(tc--){
cin >>n1>>n2;
if (n2 > n1) {
int temp = n2;
n2 = n1;
n1 = temp;
}
for (int i = 1; i <= n2; ++i) {
if (n1 % i == 0 && n2 % i ==0) {
hcf = i;
lcm = (n1*n2)/hcf;
}
}
cout<<hcf<<" "<<lcm;
}
return 0;
}
这是一个比赛,所以它看起来不是在精神上帮助你太多。但是,问题在于你的算法效率低下,需要比网站允许的时间更长(它们可能会用很大的数字进行测试)。在wikipedia中查找GCD算法,然后再试一次。 –
由于您的代码有效,请尝试在[codereview.se]上发帖。 –