#includeusing namespace std; int t; long long n,m,k,p,x; bool solve(){ if(n==1){ if(m>0||k-1<1) return false; else return true; } else{ if(n-1<=m){ if(m==n*(n-1)/2){ if(k-1>1) return true; else return false; } else if(m 2) return true; else return false; } else return false; } else return false; } } int main(){ cin>>t; while(t--){ cin>>n>>m>>k; if(solve()){ cout<<"YES"< n个点 最少需要n-1条边联通,最多需要n*(n-1)/2条边
特判n=1
n-1=
m==n*(n-1)/2时 每个点都相连



