最小的能够被1到20整除的正数是多少?
直接交答案的题硬跑就行。
结果:232792560
#include<iostream>
using namespace std;
int main()
{
long long ans=21 ;
int k = 1;
while(k){
k = 0;
for(int i=1;i<=20;i++){
if(ans%i!=0){
k=1;
break;
}
}
ans++;
}
cout<<ans<<endl;
return 0;
}
更新一下,光暴力真是对不起出题人的一片苦心
#include <iostream>
#include <algorithm>
#include <string.h>
using namespace std;
int gcd(long long a, long long b) {
return ( b ? gcd(b, a % b) : a);
}
int main() {
long long ans = 1;
for (long long i = 1; i <= 20; i++) {
ans *= i / gcd(i, ans);
}
cout << ans << endl;
return 0;
}