void dfs(int x,int sum){ //cout<<sum<<' '; //k为有奶牛得牧场 if(sum>=k) {//找到答案 //cout<<"****"<<' '; flag=true; return; } for(auto y:edge[x]){ if(!b[y]){ if(mp[y]){//表示y这个牧场有奶牛 b[y]=true; dfs(y,sum+1);//奶牛个数加1 } else{ b[y]=true; dfs(y,sum); } } } }