http://codeforces.com/contest/463/problem/E
ノードの合計数が n のツリーがあるとすると、各ノードには重みがあり、q 個の操作が実行され、各操作には 2 つのオプションがあります:
1. ノード v とルートの間のパス上の各ノードをクエリし、条件 gcd(val[i], val[v]) > 1 を満たす v に最も近いノードの添え字を見つけます。
2. ノード v の値を w に変更します。
暴力は実際になくなりました!
#include
#include
#include
#include
#include
#include #include
#include
#include
#include