您的位置:首页 > 其它

Tsinsen A1107 比赛安排

2016-04-03 15:36 309 查看
http://oj.tsinsen.com/A1107

分析:题目基本一样,小心要求字典序最小,搜索着排就好了。

代码:

#include "bits/stdc++.h"
using namespace std;

int n, t;
bool HasBeat[105][105];

int main() {
scanf("%d", &n);
t = (1 << n);
for (int i = 1; i < t; ++i) {
printf("<%d>", i);
bool Skip[105] = { 0 };
for (int k = 1; k < t; ++k) {
if (Skip[k]) continue;
for (int u = k + 1; u <= t; ++u) if (!HasBeat[k][u] && !Skip[u]) {
Skip[u] =  HasBeat[k][u] = true;
if (k > 1) putchar(',');
printf("%d-%d", k, u);
break;
}
}
putchar('\n');
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: