Can anyone please check my code of UNITGCD and tell me what is WRONG with it?

#include <bits/stdc++.h>
using namespace std;
int main() {

ios_base::sync_with_stdio(false); 
cin.tie(NULL);
int t, n, md = 0;
vector<set<int> > ans ;
vector<int> min_days ;

cin >> t ;
while (t--) {
	cin >> n ;
	int md = 0;
	set<int> tmp ;

	if (n >= 3) {
		for (int i = 1; i <= 3; i++) {
			tmp.insert(i) ;
		}
		ans.push_back(tmp) ;


		tmp.clear();

		for (int i = 4; i <= n; i = i + 2) {
			for (int j = i; j <= i + 1 && j <= n ; j++) {
				tmp.insert(j) ;
			}
			ans.push_back(tmp) ;

			tmp.clear() ;
		}
	} else {
		for (int i = 1; i <= n; i++) {
			tmp.insert(i) ;
		}
		ans.push_back(tmp) ;

		tmp.clear() ;
	}

	min_days.push_back(floor(n / 2)) ;
		int x , y = 0 ;
	for (int i = 0; i < min_days.size(); i++) {
		cout << min_days[i] << "\n" ;
		x = 0 ;

		while (x < min_days[i]) {
			vector<set<int> >::iterator it = ans.begin();
			set<int> myset = *(it + x + y) ;
			for (const int i : myset) {
				cout << i << " ";
			}
			cout << "\n" ;

			x++ ;
		}

		y = x ;
	}

}



return 0;

}