#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; struct node{ int x; long long wei; // node(){} // node(int x,int y):x(x),y(y){} bool operator < (const node & p) const { return wei>=p.wei; } }; struct edge{ int x; long long wei; // node(){} // node(int x,int y):x(x),y(y){} bool operator < (const edge & p) const { return weivc; void prime() { vc.push_back(2); for(int i=3;i<=100000;i+=2){ if(vis[i]==0){ vc.push_back(i); for(int j=3;j*i<=100000;j+=2){ vis[i*j]=1; } } } } int main() { prime(); int i,j,k,l,m,n; // for(i=0;i<100;i++)cout<