#include using namespace std; #define ALL(x) x.begin(),x.end() #define rep(i,n) for(int i=0;i<(n);i++) #define debug(v) cout<<#v<<":";for(auto x:v){cout<bool chmax(T &a,const T &b){if(abool chmin(T &a,const T &b){if(b par; vector siz; int c;//親の個数(グループ数) void init(int n){ c=n; for(int i=0;i>n>>p; UnionFind uf(n+1); for(int i=2;i<=n;i++){ for(int j=i+i;j<=n;j+=i){ uf.unite(i,j); } } cout<