#include using namespace std; int my_gcd(int a, int b) { if(b==0) return a; return my_gcd(b, a%b); } int my_lcm(int a, int b) { return a/my_gcd(a,b)*b; } /////////////////// メイン /////////////////// int main () { //////////////////// 入力 //////////////////// int n; cin >> n; vector> a(n); for (int i=0; i> a.at(i).second; } reverse(a.begin(),a.end()); //////////////// 出力変数定義 //////////////// vector result(0); //////////////////// 処理 //////////////////// while (a.size()>0) { result.emplace_back(a.back().second); a.pop_back(); for (auto& p : a) { p.first = my_lcm(p.second,result.back()); } sort(a.begin(),a.end(),greater<>()); } //////////////////// 出力 //////////////////// for (size_t i=0; i