noip第24课作业
1. 马走日
【问题描述】
马在中国象棋以日子形规则移动。请编写一段程序给定n*m大小的棋盘,以及马的初始位置(x,y),要求不能重复经过棋盘上的同一个点,计算马可以有多少途径遍历棋盘上的所有点。
输入:第一行为整数T(T<10),表示测试数据组数。每一组测试数据包含一行,为四个整数,分别为棋盘的大小以及初始位置坐标n,m,x,y。(0≤x≤n-1,0≤y≤m-1,m<10,n<10)
输出:每组测试数据包含一行,为一个整数,表示马能遍历棋盘的途径总数,0为无法遍历一次。
【样例输入】
1
5 4 0 0
【样例输出】
32
#include<iostream>
#define N 11
using namespace std;
int n,m,bx,by,ans = ;
int vist[N][N];
void clearZ(){
for(int i = ; i < n; i++){
for(int j = ; j < m; j++){
vist[i][j] = ;
}
}
}
bool check(){
for(int i = ; i < n; i++){
for(int j = ; j < m; j++){
if(!vist[i][j]) return false;
}
}
return true;
}
void dfs(int x, int y){
if(x >= && x < n && y >= && y < m && !vist[x][y]){
vist[x][y] = ;
if(check()){
ans++;
}
else{
dfs(x-,y-);
dfs(x-,y-);
dfs(x-,y+);
dfs(x-,y+);
dfs(x+,y-);
dfs(x+,y-);
dfs(x+,y+);
dfs(x+,y+);
}
vist[x][y] = ; }
}
int main()
{
int T;
cin >> T;
while(T--){
cin >> n >> m >> bx >> by;
clearZ();
dfs(bx,by);
cout << ans << endl;
}
return ;
}
2. 2n皇后问题
【问题描述】
给定一个 n*n 的棋盘,棋盘中有一些位置不能放皇后。现在要向棋盘中放入 n 个黑皇后和 n个白皇后,使任意的两个黑皇后都不在同一行、同一列或同一条对角线上,任意的两个白皇后都不在同一行、同一列或同一条对角线上。问总共有多少种放法?(n<=8)
【输入格式】
输入的第一行为一个整数 nn,表示棋盘的大小。
接下来n行,每行n个0或1的整数,如果一个整数为1,表示对应的位置可以放皇后,如果一个整数为0,表示对应的位置不可以放皇后。
【输出格式】
输出n个数,为满足要求的序列。
【样例输入】
4
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
【样例输出】
2
【样例输入】
4
1 0 1 1
1 1 1 1
1 1 1 1
1 1 1 1
【样例输出】
0
3. 求最大路径
【问题描述】
把数1到N排放成一周,每2个相邻的数的差的平方为2个数之间的距离。问怎样排放可以使一圈的距离最大,输出这个最大值。 例如:1 6 2 4 3 5最大距离就是25+16+4+1+4+16=66;
输入:第1行输入一个正整数N<12。
输出:一个整数,最大周长的值。
【样例输入】
6
【样例输出】
66
noip第24课作业的更多相关文章
- noip第29课作业
1. 钢条切割 [问题描述] 一家公司购买长钢条,将其切割成短钢条出售,切割本身没有成本,长度为i的短钢条的价格为Pi.那给定一段长度为n的钢条和一个价格表Pi,求钢条的切割方案使得收益Rn最大. ...
- noip第17课作业
1. 召见骑士 [问题描述] 某王国有5位骑士,每位骑士都有自己的编号,且这个王国的编号都为奇数,分别为1,3,5,7,9,在国王召见他们之前他们都必须经过只能从一边进出的长廊,长廊的宽度只能坐一个 ...
- noip第5课作业
1. 计算税收 [问题描述] 对某产品征收税金,在产值1万元以上收税5%:在1万元以下但在5000元或者以上的征收税3%:在5000元以下但在1000元或以上征收税2%:1000元以下的免收税 ...
- noip第1课作业
1. 求三个数的乘积和三次方和 [问题描述] 编程实现输入任意三个整数a, b, c,将这三个数的乘积以及三次方和输出: [样例输入] 1 2 3 [样例输出] 6 36 #include &l ...
- noip第9课作业
1. 打印乘法表 [问题描述] 用for循环实现输出1至9的乘法表 [样例输出] 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4 ...
- noip第24课资料
- noip第34课作业
1. 信息加密 [问题描述] 在传递信息的过程中,为了加密,有时需要按一定规则将文本转换成密文发送出去.有一种加密规则是这样的:1. 对于字母字符,将其转换成其后的第3个字母.例如:A→D,a→ ...
- noip第33课作业
1. 排座椅 [问题描述] 上课的时候总会有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情.不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同 ...
- noip第28课作业
分段数列 [问题描述] 对于给定的一个长度为N的正整数数列A[i],现要将其分成连续的若干段,并且每段和不超过M(可以等于M),问最少能将其分成多少段使得满足要求. 输入格式: 输入第1行包含两个正整 ...
随机推荐
- 使用Trinity拼接以及分析差异表达一个小例子
使用Trinity拼接以及分析差异表达一个小例子 2017-06-12 09:42:47 293 0 0 Trinity 将测序数据分为许多独立的de Brujin grap ...
- asp.net web 服务器端全局定时执行任务
web网站里面,需要每隔1分钟,执行一个任务,并且一直保持这个定时执行状态,可以用如下一个方法: 1,Global.asax里面的 Application_Start ,发生在第一次请求网站的时 ...
- virualbox问题
出不来64位虚拟系统 bios设置虚拟化可用 2.创建虚拟机 启动不了 提示 不能打开一个... 安装exten 扩张包 3.设备 -- 安装增强功能... 分辨率 设置成功
- [Robot Framework] 动态等待,提供默认的等待时间,等待时间可传可不传
默认10s
- [Hbase]Hbase章1 Hbase框架及基本概念
Hbase框架介绍 HBase是一个分布式的.面向列的开源数据库. 不同点: l 和一般的关系数据库不同,hbase是一个适合于非结构化数据存储的数据库. l Hbase是基于列而不是基于行的模式 ...
- 关于使用的xshll和xftp中乱码咋办?
1.Xshll中 2.Xftp中同理都是一样的设置
- Grunt教程——安装Grunt
Grunt教程--安装Grunt 作者:大漠 日期:2013-11-04 点击:3124 tools grunt 在上一节<Grunt教程--初涉Grunt>一文中介绍了Grunt是什么, ...
- 【WebService】WebService之CXF和Spring整合(六)
前面介绍了WebService与CXF的使用,项目中我们经常用到Spring,这里介绍CXF与Spring整合 步骤 1.创建一个Maven Web项目,可以参照:[Maven]Eclipse 使用M ...
- 别人的Linux私房菜(3)主机规划与磁盘分区
磁盘阵列:RAID.将数个硬盘整合成为在操作系统看来是一个硬盘. Linux对笔记本电脑的支持:https://www.linux-laptop.net/ 几乎所有硬件设备存放于/dev/目录. SC ...
- Hibernate 的缓存
Hibernate的一级缓存 什么是缓存?? 1 数据存到数据库里面,数据库本身是文件系统,使用流方式操作文件效率不是很高. 1.1 把数据存到内存里面,不需要使用流方式,可以直接读取内存中数据 ...