
一本通
文章平均质量分 52
记录信息学奥赛一本通的题解
pystraf
一名OIer
展开
-
1974:【16NOIP普及组】回文日期
枚举1月1日到12月31日,根据日期构造回文年份,再判断构成的日期是否有效,统计数量,时间复杂度。tips:不用判闰年,因为0229倒过来是9220,这年是闰年。原创 2023-09-30 16:05:00 · 291 阅读 · 0 评论 -
信息学奥赛一本通 1919:【02NOIP普及组】选数
注意和最大是1亿,判素数不能用筛法,而且需要优化。我们进行深搜,对于一个数,要么选,要么不选。原创 2023-09-30 15:14:18 · 139 阅读 · 0 评论 -
信息学奥赛一本通 1449:【例题2】魔板
首先注意:输入是按顺时针给出的,但我们处理时需要按正常顺序排,可以用以下代码读入。就是上下两行交换,for从0遍历到3,交换s[i]和s[i+4]即可。然后在搜索中,可以使用map,也能用康托展开,就是编程繁琐一些。按顺序给每格标为t0,t1,...,t7,如下图。知道这些就不难了,剩下的就是广搜。原创 2025-03-14 22:39:17 · 441 阅读 · 0 评论 -
信息学奥赛一本通 1416:【17NOIP普及组】棋盘
而且需要剪枝:若到达一个点时,花费已经超过当前最优解,就不用继续搜索。注意,朴素深搜过不了,要记忆化搜索。原创 2023-09-29 14:27:39 · 242 阅读 · 0 评论 -
信息学奥赛一本通 1307:【例1.3】高精度乘法 & 1174:大整数乘法
一行,即相乘后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。输入两个高精度正整数M和N(M和N均小于100位)。求这两个高精度数的积。有两行,每行是一个不超过200位的非负整数,没有多余的前导0。求两个不超过200位的非负整数的积。输入两个高精度正整数M和N。求这两个高精度数的积。1174:大整数乘法。原创 2023-09-15 22:02:06 · 576 阅读 · 0 评论 -
信息学奥赛一本通 1979:【18NOIP普及组】龙虎斗
注意long long求绝对值需要自己实现。剩下不用多说了吧,大大的模拟。原创 2023-09-29 13:43:22 · 119 阅读 · 0 评论 -
信息学奥赛一本通 1359:围成面积
题目描述】编程计算由“*”号围成的下列图形的面积。面积计算方法是统计*号所围成的闭合曲线中水平线和垂直线交点的数目。如下图所示,在10×10的二维数组中,有“*”围住了15个点,因此面积为15。【输入】10×10的图形。【输出】输出面积。【输入样例】【输出样例】15。原创 2023-09-13 21:29:45 · 548 阅读 · 0 评论 -
信息学奥赛一本通 2005:【20CSPJ普及组】直播获奖
NOI2130 即将举行。为了增加观赏性,CCF 决定逐一评出每个选手的成绩,并直播即时的获奖分数线。本次竞赛的获奖率为 w%,即当前排名前 w% 的选手的最低成绩就是即时的分数线。更具体地,若当前已评出了 p 个选手的成绩,则当前计划获奖人数为 max(1,⌊p∗w%⌋),其中 w 是获奖百分比,⌊x⌋表示对 x 向下取整,max(x,y) 表示 x 和 y 中较大的数。如有选手成绩相同,则所有成绩并列的选手都能获奖,因此实际获奖人数可能比计划中多。原创 2023-09-12 21:57:28 · 447 阅读 · 0 评论 -
信息学奥赛一本通 1336:【例3-1】找树根和孩子
【代码】信息学奥赛一本通 1336:【例3-1】找树根和孩子。原创 2023-09-09 12:51:58 · 187 阅读 · 0 评论 -
信息学奥赛一本通 1339:【例3-4】求后序遍历
【代码】信息学奥赛一本通 1339:【例3-4】求后序遍历。原创 2023-09-09 13:16:53 · 197 阅读 · 0 评论 -
信息学奥赛一本通 1218:取石子游戏
假设石子数目为(a,b)且a >= b,如果[a/b] >= 2则先手必胜,如果[a/b]原创 2023-09-02 15:10:52 · 453 阅读 · 0 评论 -
信息学奥赛一本通 1214:八皇后
题目描述】会下国际象棋的人都很清楚:皇后可以在横、竖、斜线上不限步数地吃掉其他棋子。如何将8个皇后放在棋盘上(有8 × 8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题。对于某个满足要求的8皇后的摆放方法,定义一个皇后串a与之对应,即a=b1b2...b8,其中bi为相应摆法中第i行皇后所处的列数。已经知道8皇后问题一共有92组解(即92个不同的皇后串)。给出一个数b,要求输出第b个串。串的比较是这样的:皇后串x置于皇后串y之前,当且仅当将x视为整数时比y小。【输入】原创 2023-08-29 15:37:21 · 438 阅读 · 1 评论 -
信息学奥赛一本通 1213:八皇后问题
在国际象棋棋盘上放置八个皇后,要求每两个皇后之间不能直接吃掉对方。(无)按给定顺序和格式输出所有八皇后问题的解(见样例)。(无)【输出样例】No. 11 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 No. 21 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0原创 2023-08-29 15:10:57 · 345 阅读 · 1 评论 -
信息学奥赛一本通 1217:棋盘问题
在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放。每组数据的第一行是两个正整数n,k,用一个空格隔开,表示了将在一个n×n的矩阵内描述棋盘,以及摆放棋子的数目。随后的n行描述了棋盘的形状:每行有n个字符,其中 # 表示棋盘区域,. 表示空白区域(数据保证不出现多余的空白行或者空白列)。对于每一组数据,给出一行输出,输出摆放的方案数目C(数据保证C原创 2023-08-28 15:13:17 · 802 阅读 · 1 评论 -
信息学奥赛一本通 1252:走迷宫
【题目描述】一个迷宫由R行C列格子组成,有的格子里有障碍物,不能走;有的格子是空地,可以走。给定一个迷宫,求从左上角走到右下角最少需要走多少步(数据保证一定能走到)。只能在水平方向或垂直方向走,不能斜着走。【输入】第一行是两个整数,R和C,代表迷宫的长和宽。接下来是R行,每行C个字符,代表整个迷宫。空地格子用‘.’表示,有障碍物的格子用‘#’表示。迷宫左上角和右下角都是‘.’。【输出】输出从左上角走到右下角至少要经过多少步(即至少要经过多少个空地格子)。计算步数要包括起点和终点。原创 2023-08-28 13:45:37 · 1260 阅读 · 1 评论 -
信息学奥赛一本通 1256:献给阿尔吉侬的花束
【题目描述】阿尔吉侬是一只聪明又慵懒的小白鼠,它最擅长的就是走各种各样的迷宫。今天它要挑战一个非常大的迷宫,研究员们为了鼓励阿尔吉侬尽快到达终点,就在终点放了一块阿尔吉侬最喜欢的奶酪。现在研究员们想知道,如果阿尔吉侬足够聪明,它最少需要多少时间就能吃到奶酪。迷宫用一个R×C的字符矩阵来表示。字符S表示阿尔吉侬所在的位置,字符E表示奶酪所在的位置,字符#表示墙壁,字符.表示可以通行。阿尔吉侬在1个单位时间内可以从当前的位置走到它上下左右四个方向上的任意一个位置,但不能走出地图边界。【输入】原创 2023-08-27 22:10:31 · 378 阅读 · 0 评论 -
信息学奥赛一本通 1251:仙岛求药
题目描述】少年李逍遥的婶婶病了,王小虎介绍他去一趟仙灵岛,向仙女姐姐要仙丹救婶婶。叛逆但孝顺的李逍遥闯进了仙灵岛,克服了千险万难来到岛的中心,发现仙药摆在了迷阵的深处。迷阵由M×N个方格组成,有的方格内有可以瞬秒李逍遥的怪物,而有的方格内则是安全。现在李逍遥想尽快找到仙药,显然他应避开有怪物的方格,并经过最少的方格,而且那里会有神秘人物等待着他。现在要求你来帮助他实现这个目标。下图 显示了一个迷阵的样例及李逍遥找到仙药的路线。【输入】原创 2023-08-26 21:40:48 · 452 阅读 · 0 评论 -
信息学奥赛一本通 1254:走出迷宫
【题目描述】当你站在一个迷宫里的时候,往往会被错综复杂的道路弄得失去方向感,如果你能得到迷宫地图,事情就会变得非常简单。假设你已经得到了一个n x m的迷宫的图纸,请你找出从起点到出口的最短路。【输入】第一行是两个整数n和m(1≤n,m≤1001),表示迷宫的行数和列数。接下来n行,每行一个长为m的字符串,表示整个迷宫的布局。字符‘’表示空地,‘’表示墙,‘S’表示起点,‘T’表示出口。【输出】输出从起点到出口最少需要走的步数。【输入样例】3 3S#T.#....【输出样例】6。原创 2023-08-27 21:00:23 · 755 阅读 · 0 评论 -
信息学奥赛一本通 1253:抓住那头牛
【题目描述】农夫知道一头牛的位置,想要抓住它。农夫和牛都位于数轴上,农夫起始位于点N(0≤N≤100000),牛位于点K(0≤K≤100000)。农夫有两种移动方式:1、从X移动到X−1或X+1,每次移动花费一分钟2、从X移动到2X,每次移动花费一分钟假设牛没有意识到农夫的行动,站在原地不动。农夫最少要花多少时间才能抓住牛?【输入】两个整数,N和K。【输出】一个整数,农夫抓到牛所要花费的最小分钟数。【输入样例】5 17【输出样例】4。原创 2023-08-27 21:29:21 · 424 阅读 · 0 评论 -
信息学奥赛一本通 1255:迷宫问题
【题目描述】定义一个二维数组:0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,1,0,它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的最短路线。【输入】一个5 × 5的二维数组,表示一个迷宫。数据保证有唯一解。【输出】左上角到右下角的最短路径,格式如样例所示。【输入样例】0 1 0 0 00 1 0 1 00 0 0 0 00 1 1 1 00 0 0 1 0。原创 2023-08-25 21:50:19 · 610 阅读 · 0 评论 -
信息学奥赛一本通 1212:LETTERS
给出一个的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母。问最多可以经过几个字母。原创 2023-08-25 21:40:18 · 728 阅读 · 1 评论