分治算法 循环比赛日程表
分治算法 循环比赛日程表
- 题目:
- 解析:
- 思路:
- 代码:
题目:
设有N个选手进行循环比赛,其中N=2M,要求每名选手要与其他N-1名选手都赛一次,每名选手每天比赛一次,循环赛共进行N-1天,要求每天没有选手轮空。
解析:
看完这道题的童鞋们
肯定不知道这题为何是分支
其实呀
给童鞋们
看一下
输出出来的表格就知道了
这个表格
可以分成4份
左上角的那份
和右下角相同
右上角的那份
和左下角相同
每个小份
可以再分成4份
每个右上角块数值=左上角块+每一块的边长
同上
思路:
先将a[1][1]
赋值为1
a[1][1]就是第一个左上角
接着再通过第一个左上角
造出第一个右上角
再通过赋值的方式
就把四个角都赋值好了
再把这个方块
作为一个左上角
同上
代码:
#include<bits/stdc++.h>
#include<iostream>
#include<cstdlib>
#include<cstdio>
using namespace std;
int m,n,a[1000][1000],l;
int main()
{freopen("bs.in","r",stdin);freopen("bs.out","w",stdout);cin>>m;n=pow(2,m);a[1][1]=1; for(int k=0;k<m;k++){l=pow(2,k);for(int i=1;i<=l;i++)//先造出右上角的数据 for(int j=1;j<=l;j++)a[i][j+l]=a[i][j]+l;for(int i=1;i<=l;i++)//左上角的数据与右下角的数据相同 for(int j=1;j<=l;j++)a[i+l][j+l]=a[i][j];for(int i=1;i<=l;i++)//右上角的数据与左下角的数据相同 for(int j=1;j<=l;j++)a[i+l][j]=a[i][j+l];}for(int i=1;i<=n;i++){for(int j=1;j<=n;j++)cout<<a[i][j]<<" ";cout<<endl;}fclose(stdin);fclose(stdout);return 0;
}
拜拜!!!
分治算法 循环比赛日程表相关推荐
- 循环比赛日程表(分治 C++)
循环比赛日程表 总时间限制: 1000ms 内存限制: 65535kB 描述 设有n个选手进行循环比赛,其中n=2m,要求每名选手要与其他n-1名选手都赛一次,每名选手每天比赛一次,循环赛共进行n-1 ...
- 1325:【例7.4】 循环比赛日程表——分治
[题目描述] 设有N个选手进行循环比赛,其中N=2^M,要求每名选手要与其他N−1名选手都赛一次,每名选手每天比赛一次,循环赛共进行N−1天,要求每天没有选手轮空. [输入] 输入:M. [输出] 输 ...
- 【例7.4】 循环比赛日程表
1325:[例7.4] 循环比赛日程表 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 1717 通过数: 901 [题目描述] 设有NN个选手进行循环比赛 ...
- 信息奥赛一本通(1325:【例7.4】 循环比赛日程表)
1325:[例7.4] 循环比赛日程表 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 6257 通过数: 3483 [题目描述] 设有N个选手进行循环比赛 ...
- 循环比赛日程表(match)
循环比赛日程表(match) #include<bits/stdc++.h> using namespace std; int m,n,a[1005][1005],h[1005][1005 ...
- 1325:【例7.4】 循环比赛日程表
1325:[例7.4] 循环比赛日程表 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 8879 通过数: 5227 [题目描述] 设有NN个选手进行循环比 ...
- 循环比赛日程表(信息学奥赛一本通-T1325)
[题目描述] 设有N个选手进行循环比赛,其中N=2M,要求每名选手要与其他N-1名选手都赛一次,每名选手每天比赛一次,循环赛共进行N-1天,要求每天没有选手轮空. [输入] 输入:M. [输出] 输出 ...
- 循环比赛日程表(分治法)
问题描述: 设有n=2^k个运动员要进行网球循环赛.现要设计一个满足以下要求的比赛日程表: (1)每个选手必须与其他n-1个选手各赛一次: (2)每个选手一天只能参赛一次: (3) ...
- 分治算法解循环赛日程表问题
• 问题描述:n=2^k个运动员进行"地表最强16人"循环赛,日程满足: 每个选手必须与其他n-1个选手比赛一次: 每个选手一天只能赛一次: 循环赛一共进行n-1天. ...
- python实现循环赛日程表问题的算法_循环赛日程表的分治算法实现实验报告gxl.doc...
循环赛日程表的分治算法实现实验报告gxl PAGE PAGE 2 深 圳 大 学 实 验 报 告 课程名称: 算法设计与分析 实验项目名称: 分治算法 --矩阵相乘的Strassen算法及时间复杂性分 ...
最新文章
- idea没有错误出现红色波浪线怎么去掉?
- 如何取得Win7文件的管理员权限?
- C语言signal()函数(通过设置一个函数(回调函数)来处理捕获到异常信号时需要执行的操作)
- 一加3t刷机后还卡_OPPO A5?A7?A57?刷机注意:这几款手机千万别混淆!
- java 不能反序列化_java中的序列化与反序列化
- 如何使用Node.js和CloudFormation在AWS Lambda中构建和部署GraphQL服务器
- Xcode6中自动布局autolayout和sizeclass的使用
- 浅入浅出 Java 排序算法
- 51黑单片机论坛c语言,51黑论坛_51单片机轻松入门—基于STC15W4K系列
- c语言自学教程——字符函数和字符串函数
- 小样本学习记录————利用所有数据的元学习Few-shot Text Classification with Distributional Signatures
- GPS坐标间距离计算
- 地图分幅编号C 语言编程,地图分幅编号的计算
- 怎样提高英语思维能力?
- 问题十四:怎么可视化球的法向量
- hadoop入门介绍(一)
- 每日加瓦,终成栋房4-final、内部类、权限修饰符
- URLRewrite地址重定向的实现
- 软件开发项目经理岗位职责
- 天猫精灵实现误无醒词推送断网负载播报
热门文章
- android设置标题颜色设置颜色,设置标题背景颜色
- Go语言源码中Replacer查找部份的笔记
- 2016推免面试经历纪实——四川大学计算机学院
- Your Command Line Tools are too outdated
- Vue打包出现Browserslist: caniuse-lite is outdated
- 学的java,想问问现在想做电商的项目怎末样?
- 数模技术转换应用于计算机控制,数模转换器的作用
- Linux程序设计——用getopt处理命令行参数
- 康宁发布第五代大猩猩玻璃 坚韧度更强更耐摔
- ptp精准时间协议_精确时间协议PTP研究