-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]上發帖。 –