初步:加法原理和乘法原理 概念: 加法原理是分类计数原理,常用于排列组合中,具体是指:做一件事情,完成它有n类方式,第一类方式有M1种方法,第二类方式有M2种方法,……,第n类方式有Mn种方法,那么完成这件事情共有M1+M2+……+Mn种方法。 做一件事,完成它需要分成n个步骤,做第一 步有m1种不 ...
分类:
其他好文 时间:
2018-09-22 00:47:49
阅读次数:
300
中国象棋《棋经论》及象棋布局歌诀,值得研究、细细品味 象棋博弈高手 2018-09-05 20:38:29 《棋经论》 夫弈棋者,要专心、绝虑,静算待敌,坦然无喜怒挂怀。大抵一局之中,千变万化。如车前马后,发炮逐卒;如电掣雷,炮铺卒行,逼近士、象,如狼奔虎跃。顺手炮,先要活车;列手炮,补士要牢;士角 ...
分类:
其他好文 时间:
2018-09-06 02:48:57
阅读次数:
149
中国象棋口诀及要领精髓 象棋博弈高手 2018-09-05 20:21:18 一、双士缺象畏炮攻,双象少士怕兵冲 二、一车十子寒 三、死子勿急吃 四、卒子过河后应注意: 1.其它后勤子力(车、马、包)须能配合以利推进 2.占据要点,主导局面,不轻言牺牲 五、布局反先要点: 1.逼使对手走子还原(重复 ...
分类:
其他好文 时间:
2018-09-06 02:44:26
阅读次数:
144
统计方案,~~果断~~ dp 注意到合法方案即为每一行,每一列的棋子数不超过2 设$f_{i,j,k}$表示放到第$i$行,有$j$列可以放2个,有$k$列可以放1个的方案 然后就随便讨论一下 详见代码 cpp // luogu judger enable o2 include define LL ...
分类:
其他好文 时间:
2018-08-30 23:30:02
阅读次数:
173
题目大意: Description 众所周知,車是中国象棋中最厉害的一子之一,它能吃到同一行或同一列中的其他棋子。車跟車显然不能在一起打 起来,于是rly一天又借来了许多许多的車在棋盘上摆了起来……他想知道,在N×M的矩形方格中摆最多个数的車 使其互不吃到的情况下方案数有几种。但是,由于上次摆炮摆得 ...
分类:
其他好文 时间:
2018-08-23 16:58:19
阅读次数:
150
<题目链接> 题目大意: 車是中国象棋中的一种棋子,它能攻击同一行或同一列中没有其他棋子阻隔的棋子。一天,小度在棋盘上摆起了许多車……他想知道,在一共N×M个点的矩形棋盘中摆最多个数的車使其互不攻击的方案数。他经过思考,得出了答案。但他仍不满足,想增加一个条件:对于任何一个車A,如果有其他一个車B在 ...
分类:
其他好文 时间:
2018-08-13 00:45:00
阅读次数:
150
题目:https://jzoj.net/senior/#main/show/1667 首先,一行、一列最多只有 2 个炮; 所以记录一下之前有多少行有 0/1/2 个炮,转移即可; 注意取模!小心在某处爆 int 。 代码如下: ...
分类:
其他好文 时间:
2018-08-05 22:38:24
阅读次数:
221
GitHub地址: https://github.com/daleyzou/wobuku 这是自己大一学完c++后,在课程实践中写过的一个程序,实现象棋人机对战的算法还是有点难的, 自己当时差不多也是写了两个月左右吧!当时看书又有很多问题得不到解决,所以就在网上找了一个视频跟着写。 当然,这其中有很 ...
分类:
编程语言 时间:
2018-08-04 21:43:39
阅读次数:
179
题目链接 30分: 爆搜。 50分: 可以发现,每行和每列最多都只能放两个象棋,考虑三进制状压dp,表示出每列放了多少个象棋(只能是0个,1个或2个),从上往下一行一行地处理即可。如果列数过于大的话,交换行数和列数再处理就行了,因为在50%的数据中,行数和列数中至少是有一个不超过8的。 100分: ...
分类:
其他好文 时间:
2018-07-31 01:34:26
阅读次数:
152
注意到一行只能放012个炮,我们只需要知道列的状态,不用状压行 所以设f[i][j][k]表示前i行有j列有1个炮,有k列有2个炮的方案数 然后分情况讨论转移就行了 ...
分类:
其他好文 时间:
2018-07-25 23:10:50
阅读次数:
161