이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
using namespace std;
vector <vector <int>> dd;
const int n = 35;
vector <int> cur;
int freq[n + 1];
void gen (int pos) {
	if (pos == n + 1) {
		dd.push_back(cur);
		reverse(dd.back().begin(), dd.back().end());
		return;
	}
	gen(pos + 1);
	bool flag = 0;
	for (auto i : cur) {
		flag |= !freq[__gcd(pos, i)];
	}
	if (flag) return;
	cur.push_back(pos); freq[pos] = 1; gen(pos + 1);
	cur.pop_back(); freq[pos] = 0;
}
int main () {
	gen(1);
	sort(dd.begin(), dd.end());
	int t;
	cin >> t;
	while (t--) {
		int k;
		cin >> k;
		cout << dd[k].size() << " ";
		for (int i = dd[k].size() - 1; i >= 0; i--) {
			cout << dd[k][i] << " ";
		}
		cout << '\n';
	}
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |