#include <iostream>
using namespace std;
int gcd(int u, int v)
{
if (v==0)
return u;
else
return gcd(v, u%v);
}
int lcm(int u, int v)
{
// least common multiplier is the product of the two
// numbers divided by the GCD (GCD would otherwise
// be included twice, which is unnecessary); note that
// I first divide one number by GCD, so that we don't
// end up with a too large of a number when it is not
// necessary
u /= gcd(u,v);
return u*v;
}
int main()
{
int i;
int result = 1;
// number that can be divided by 1 through 2 is
// the least common multiplier of all the numbers,
// which can be computed one number at a time
for (i=2; i<=20; i++)
result = lcm(result, i);
cout << result << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBnY2QoaW50IHUsIGludCB2KQp7CiAgIGlmICh2PT0wKQogICAgIHJldHVybiB1OwogICBlbHNlCiAgICAgcmV0dXJuIGdjZCh2LCB1JXYpOwp9CgppbnQgbGNtKGludCB1LCBpbnQgdikKewogIC8vIGxlYXN0IGNvbW1vbiBtdWx0aXBsaWVyIGlzIHRoZSBwcm9kdWN0IG9mIHRoZSB0d28KICAvLyBudW1iZXJzIGRpdmlkZWQgYnkgdGhlIEdDRCAoR0NEIHdvdWxkIG90aGVyd2lzZQogIC8vIGJlIGluY2x1ZGVkIHR3aWNlLCB3aGljaCBpcyB1bm5lY2Vzc2FyeSk7IG5vdGUgdGhhdAogIC8vIEkgZmlyc3QgZGl2aWRlIG9uZSBudW1iZXIgYnkgR0NELCBzbyB0aGF0IHdlIGRvbid0CiAgLy8gZW5kIHVwIHdpdGggYSB0b28gbGFyZ2Ugb2YgYSBudW1iZXIgd2hlbiBpdCBpcyBub3QKICAvLyBuZWNlc3NhcnkKCiAgdSAvPSBnY2QodSx2KTsKCiAgcmV0dXJuIHUqdjsKfSAKCmludCBtYWluKCkKewogIGludCBpOwogIGludCByZXN1bHQgPSAxOwoKICAvLyBudW1iZXIgdGhhdCBjYW4gYmUgZGl2aWRlZCBieSAxIHRocm91Z2ggMiBpcwogIC8vIHRoZSBsZWFzdCBjb21tb24gbXVsdGlwbGllciBvZiBhbGwgdGhlIG51bWJlcnMsCiAgLy8gd2hpY2ggY2FuIGJlIGNvbXB1dGVkIG9uZSBudW1iZXIgYXQgYSB0aW1lCiAKICBmb3IgKGk9MjsgaTw9MjA7IGkrKykKICAgIHJlc3VsdCA9IGxjbShyZXN1bHQsIGkpOwoKICBjb3V0IDw8IHJlc3VsdCA8PCBlbmRsOwoKICByZXR1cm4gMDsKfQ==