蓝桥杯 ALGO-65 算法训练 比赛安排

栏目: 编程工具 · 发布时间: 7年前

内容简介:问题描述设有有2 n(n<=6)个球队进行单循环比赛,计划在2 n – 1天内完成,每个队每天进行一场比赛。设计一个比赛的安排,使在2 n – 1天内每个队都与不同的对手比赛。输入格式

问题描述

设有有2 n(n<=6)个球队进行单循环比赛,计划在2 n – 1天内完成,每个队每天进行一场比赛。设计一个比赛的安排,使在2 n – 1天内每个队都与不同的对手比赛。

输入格式

输入文件matchplan.in共一行,输入n的数值。

输出格式

输出文件matchplan.out共(2 n – 1)行,第i行输出第i天的比赛安排。

样例输入

2

样例输出

<1>1-2,3-4

<2>1-3,2-4

分析:1.根据题意,队伍序号小的的先安排先比赛,每个队伍每天都要比赛

2.每个队伍向后挑选最近队伍比赛,标记今天比过赛了,并标记某两个队伍比过赛~

#include <iostream>
#include <cstring>
#include <cmath>
using namespace std;
int main() {
    int n, m, a[1000], mp[10000] = {0};
    cin >> n;
    m = pow(2, n);
    for (int i = 1; i <= m - 1; i++) {
        memset(a, 0, sizeof(a));
        printf("<%d>", i);
        for (int j = 1; j <= m; j++) {
            if (a[j] == 0) {
                for (int k = j + 1; k <= m; k++) {
                    if (mp[j * 100 + k] == 0 && a[k] == 0) {
                        printf("%d-%d ", j, k);
                        mp[j * 100 + k] = 1;
                        a[j] = a[k] = 1;
                        break;
                    }
                }
            }
 
        }
        cout << endl;
    }
    return 0;
}
❤❤点击这里 -> 订阅PAT、蓝桥杯、GPLT天梯赛、LeetCode题解离线版❤❤ 蓝桥杯 ALGO-65 算法训练 比赛安排

以上所述就是小编给大家介绍的《蓝桥杯 ALGO-65 算法训练 比赛安排》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Beginning ASP.NET 4 in C# and Vb

Beginning ASP.NET 4 in C# and Vb

Imar Spaanjaars / Wrox / 2010-3-19 / GBP 29.99

This book is for anyone who wants to learn how to build rich and interactive web sites that run on the Microsoft platform. With the knowledge you gain from this book, you create a great foundation to ......一起来看看 《Beginning ASP.NET 4 in C# and Vb》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码