- 2024-11-21Nim游戏2(台阶型)
有1~n级台阶,每个台阶有a[i]个石子,每次操作可以将k级台阶的一些石子移动到k-1级台阶上。移动到第0级不可再动,无法再操作者输,给出石子分布情况,问先手是否必胜和取石子nim游戏本质相同,考虑移动石子的过程,通过“观察”可得,结论是奇数台阶数量异或和为0则先手必输,否则必赢。结合上一
- 2024-11-09[lnsyoj1801/luoguP2051/AHOI2009] 中国象棋
题意在\(n\timesm\)大小的棋盘上放无标号棋子,使得任何一行或一列都不多于\(2\)个棋子,求方案数sol计数题,优先考虑dp。由于每行每列棋子不多于两个,所以我们可以计\(f_{i,j,k}\)表示前\(i\)行中,\(j\)列恰好\(1\)个棋子,\(k\)列恰好\(2\)个棋子的方案数。状态转
- 2024-11-08The 3rd Universal Cup. Stage 15: Chengdu 解题集
A.ArrowaRow我们把整个序列划分成若干个形似\(\text{>>>>..>>}\)的连续段,并尝试用一个最右边连通块里最左边的\(\text{>>>}\)去覆盖掉左边不和它在一个段里的所有\(\text{>}\),如果最右边的连续段长度小于2或者没有连续段则肯定无解。对于在同一个连续段里其他的\(\te
- 2024-10-26对策问题
同学们都熟悉“田忌与齐王赛马”的故事,这个故事给我们的启示是:田忌采用了“扬长避短”的策略,取得了胜利。生活中的许多事物都蕴含着数学道理,人们在竞赛和争斗中总是玩游戏,大至体育比赛、军事较量等,人们在竞赛和争斗中总是希望自己或自己的一方获取胜利,这就要求参与竞争的双方都要
- 2024-10-22Public NOIP Round #7 T3 黑白棋子 题解
Description有一棵\(n\)个点的树,顶点的编号为\(1\)到\(n\)。对于树中的每个顶点,可能存在一个白色的棋子、一个黑色的棋子,或者没有棋子。树上正好有\(w\)个白色棋子和\(b\)个黑色棋子。另外,对于每一对具有相同颜色棋子的顶点,存在一条路径,路径上的每个顶点都包含相同颜色
- 2024-10-14洛谷P1219八皇后问题
[USACO1.5]八皇后CheckerChallenge题目链接题目描述一个如下的\(6\times6\)的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列\(2\4\6\1\3\5\)来描述,第\(i\)个数
- 2024-09-30象棋规则
棋盘九条竖线十条横线,90个交叉点,有90个放棋子的地方。棋子的运用原则将与帅,士与仕,象与相,兵与卒。叫法写法不一,但是他们的作用是一样的。1.将与帅①走直线,前进后退均可。②一步只能走一格。③活动范围在米字格(又称九宫)之内。④可行处可吃敌子,被吃掉的棋子本局不可出现。本
- 2024-09-29南沙C++信奥赛老师解一本通题1217:棋盘问题
【题目描述】在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放 kk 个棋子的所有可行的摆放方案 CC。【输入】输入含有多组测试数据。每组数据
- 2024-09-28NOIP2024集训Day37 DP
NOIP2024集训Day37DPA.[CQOI2011]放棋子设\(f_{i,j,k}\)表示前\(k\)种棋子放了任意\(i\)行、\(j\)列。决策是:在哪些位置填同种颜色的棋子。于是美剧上一个状态的\(i,j\)(表示为\(l,r\)),上一状态\(k_1=k-1\)。设\(g_{i,j,k}\)表示\(k\)个同种颜色的
- 2024-09-19P2051 [AHOI2009] 中国象棋 题解
DP好题?首先确定,每一行/列只能放至多两个棋子,这么少,所以我们的状态肯定和棋子数有关。由于我们不关注具体的方案数,所以我们不妨只关心对应棋子数量的行/列的数量。同时,由于考虑行和列都是一样的,所以我们不妨用行递推。所以我们设$\dp_{i,j,k}\$表示当前放到第\(i\)行,有\(
- 2024-09-18ARC073F Many Moves
当你填表法推了半年没推出来,为什么不试试刷表法呢?洛谷传送门在一行中有$n$个格子,从左往右编号为\(1\)到\(n\)。有\(2\)颗棋子,一开始分别位于位置\(A\)和\(B\)。按顺序给出\(Q\)个要求,每个要求是如下形式:给出一个位置\(x_i\),要求将两个棋子中任意一个移动到位置\(x
- 2024-09-17享元模式
享元模式(FlyweightPattern)是一种结构型设计模式,旨在通过共享大量细粒度对象来减少内存使用。它在需要创建大量相似对象的场景中尤其有用,通过共享对象来降低内存开销,从而提高性能。核心思想享元模式将对象的状态分为两部分:内部状态(IntrinsicState):不随外部环境改变,可以共享的
- 2024-09-07五子棋AI:实现逻辑与相关背景探讨(上)bu
合集-五子棋AI:遗传算法(1)1.五子棋AI:实现逻辑与相关背景探讨(上)09-07收起绪论本合集将详细讲述如何实现基于群只能遗传算法的五子棋AI,采用C++作为底层编程语言本篇将简要讨论实现思路,并在后续的文中逐一展开了解五子棋五子棋规则五子棋是一种经典的棋类游戏,规则简单却充
- 2024-09-07五子棋AI:实现逻辑与相关背景探讨(上)
绪论本合集将详细讲述如何实现基于群只能遗传算法的五子棋AI,采用C++作为底层编程语言本篇将简要讨论实现思路,并在后续的文中逐一展开了解五子棋五子棋规则五子棋是一种经典的棋类游戏,规则简单却充满策略性。游戏在一个19×19的棋盘上进行(也可以使用13×13或15×15的棋盘)。
- 2024-08-26C++ 设计模式——享元模式
C++设计模式——享元模式C++设计模式——享元模式1.主要组成成分2.享元模式内部状态3.享元模式外部状态4.逐步构建享元模式4.1抽象享元类定义4.2具体享元类实现4.3享元工厂类实现4.4主函数5.享元模式UML图享元模式UML图解析6.享元模式的优点7.享元模
- 2024-08-24[LeetCode]999. 可以被一步捕获的棋子数
可以被一步捕获的棋子数简单给定一个8x8的棋盘,只有一个白色的车,用字符'R'表示。棋盘上还可能存在白色的象'B'以及黑色的卒'p'。空方块用字符'.'表示。车可以按水平或竖直方向(上,下,左,右)移动任意个方格直到它遇到另一个棋子或棋盘的边界。如果它能够在一次移动中移
- 2024-08-21[GDCPC2023] Peg Solitaire
题目传送门题意每次可以选择棋盘上的一个棋子,让这个棋子跳过相邻的一个棋子并且吃掉跳过的棋子,问你棋盘上最少能剩余几枚棋子。思路$1\len,m\le6$,于是dfs+回溯暴力枚举。具体见代码:#include<bits/stdc++.h>usingnamespacestd;intT,n,m,k,ans;intmv[4][2]={{2,
- 2024-08-20题解:CF362A Two Semiknights Meet
题意有两个走法为中国象棋象的棋子,棋盘上有一些坏格子,问它们是否可以在好格子相遇。思路则判断两个棋子是否相遇有两个条件是否可以在一个格子相遇。那个格子是否是好格子。先考虑条件\(1\)设第一个棋子的坐标为\(a_x\)和\(a_y\),第二个棋子的坐标为\(b_x\)和\(b_y
- 2024-08-20题解:P8887 [DMOI-R1] 柯基棋
本题题意小A和小B在一个\(n\timesn\)的棋盘里下柯基棋,当一个人不能再放下棋子时,他就输了。问谁会有必胜策略。思路先不考虑小C的捣乱。分类讨论当\(n\)为奇数时,不难得出:当小A第一步放在棋盘的正中心时,以后不管小B放在哪里,小A只要放在它的对称处就行了。这
- 2024-08-082024-08-07 多校联合暑假训练赛第四场 补题+分析
A.小盒子题意+思路:题意其实概括的不是非常准确简要题意:圆盒有n个格子,格子自带ai个棋子.是否通过任意起点通过顺时针-1,-2,...,-n的操作使得圆盒中所有所有的棋子都为0思路:贪心对于所有棋子通过顺时针操作的时候每一次都是(1+n)*n/2次是一个等差公式所以
- 2024-07-30[USACO1.5] 八皇后 Checker Challenge 题解
[USACO1.5]八皇后CheckerChallenge题目描述一个如下的\(6\times6\)的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列\(2\4\6\1\3\5\)来描述,第\(i\)个数字表示在
- 2024-07-20五子棋5.0(完结)
增加人机对战功能,以及该功能与原程序融合。一、创建人机AIChess类。1、AI原理解释使用0、1、2表示该位置不同的棋子状态,使用哈希表赋给不同的分值,用于后续计算AI下棋的位置。2、功能实现(1)首先创建一个AIChess类存储AI功能的代码,同时初始化一个行列值。packagegobangv4
- 2024-07-14学而思4月月赛总结
概况:\(T1\)\(T2\)\(T3\)\(T4\)\(T5\)\(T6\)\(T7\)\(T8\)\(sum\)\(60\)\(60\)\(100\)\(4.8\)\(100\)\(50\)$0$\(30\)\(404.8\)未达到满分题:\(1,2,4,6,7,8\)\(T1\)题目描述小\(A\)和可多喜欢互相切磋井字棋。井子棋就是在九宫格里面轮流放
- 2024-07-05小J下象棋
题目链接:https://bzoj.org/p/P00304Description小J正在学习下中国象棋,现在给出一个棋子的位置,小J想知道这个棋子是否在棋盘的界内,棋盘大小为4行8列,行号标记为1到4,列号标记为1到8。如果在界内就输出“ok”Input输入只有一行,包括2个整数,分别代表棋子所在的行与列Output如题