随笔分类 - 蓝桥杯-C++A组
摘要:1.题目描述 小明最近在玩一款游戏。对游戏中的防御力很感兴趣。 我们认为直接影响防御的参数为“防御性能”,记作d,而面板上有两个防御值A和B,与d成对数关系,A=2d,B=3dA=2 注意任何时候上式都成立)。 在游戏过程中,可能有一些道具把防御值A增加一个值,有另一些道具把防御值B增加一个值。现在
阅读全文
摘要:1.区间调度问题 问题描述 在有限的区间范围内,选择完成最多的任务组合 解决策略 我们可以思考的策略有: 1.最早开始时间(begin) 2.最早结束时间(end) 3.用时最少(end - begin) 1.我们这里首先定方向:从区间最左端向右开始选择。 2.我们很容易想到的策略是选择用时最少的情
阅读全文
摘要:1.题目 题目背景 小明正在玩一个“翻硬币”的游戏。 题目描述 桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零),比如可能情形是 **oo***oooo,如果同时翻转左边的两个硬币,则变为 oooo***oooo。现在小明的问题是:如果已知了初始状态和要达到的
阅读全文
摘要:0.题目 题目描述 几个人一起出去吃饭是常有的事。但在结帐的时候,常常会出现一些争执。 现在有 个人出去吃饭,他们总共消费了 元。其中第 个人带了 元。幸运的是,所有人带的钱的总数是足够付账的,但现在问题来了:每个人分别要出多少钱呢? 为了公平起见
阅读全文
摘要:0.题目 题目描述 儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。 小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。 为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切出的巧克力需要满足: 形状是正方形,边长是整数 大小相同 例如一
阅读全文
摘要:0.题目:颜色平衡树 题目描述 给定一棵树,结点由 至 编号,其中结点 是树根。树的每个点有一个颜色 。 如果一棵树中存在的每种颜色的结点个数都相同,则我们称它是一棵颜色平衡树。 求出这棵树中有多少个子树是颜色平衡树。 输入格式 输入的第一行包含一个
阅读全文
摘要:0.题目 1.题解 1.1 二分法 思路 核心思路是用以下代码保证精度,题目要求我们保留7位精度,我们为保证可以向后推移两位,这里算9位小数(由于mid为l和r不断地/2, 最后会变成一个越来越小的小数,满足我们的精度) double eps = 1e-9; while (l + eps < r)
阅读全文
摘要:0.题目 题目描述 一年一度的「跳石头」比赛又要开始了! 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有 N 块岩石(不含起点和终点的岩石)。在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达终点。 为了提
阅读全文
摘要:0.题目 时间限制: 1.0s 内存限制: 256.0MB 本题总分:20 分 【问题描述】 给定一个长度为 N 的数组 A = [A1, A2, · · · AN],数组中有可能有重复出现的整数。 现在小明要按以下方法将其修改为没有重复整数的数组。小明会依次修改 A2, A3, · · · , A
阅读全文
摘要:0.题目 问题描述 w星球的一个种植园,被分成 m * n 个小格子(东西方向m行,南北方向n列)。每个格子里种了一株合根植物。 这种植物有个特点,它的根可能会沿着南北或东西方向伸展,从而与另一个格子的植物合成为一体。 如果我们告诉你哪些小格子间出现了连根现象,你能说出这个园中一共有多少株合根植物吗
阅读全文
摘要:0.题目 1.题解 1.1 BFS搜索 + DFS输出路径 思路 主要跟走迷宫那题不一样的地方在于需要输出路径,这里如何输出路径呢? 我们对于每一个节点,均记录其父节点,之后使用DFS反向递归回(0,0)输出节点信息,然后逐渐回溯到终点即可. 对于步数相同的,按字节序来选,我们可以通过安排 D L
阅读全文
摘要:0.题目 给定一个 n×m 的二维整数数组,用来表示一个迷宫,数组中只包含 0 或 1,其中 0 表示可以走的路,1 表示不可通过的墙壁。 最初,有一个人位于左上角 (1,1) 处,已知该人每次可以向上、下、左、右任意一个方向移动一个位置。 请问,该人从左上角移动至右下角 (n,m) 处,至少需要移
阅读全文
摘要:0.题目 问题描述 给定一个正整数 N 。你可以对 N 的任意一位数字执行任意次以下 2 种操作: 将该位数字加 1 。如果该位数字已经是 9 , 加 1 之后变成 0 。 将该位数字减 1 。如果该位数字已经是 0 , 减 1 之后变成 9 。 你现在总共可以执行 1 号操作不超过 A 次, 2
阅读全文
摘要:0.题目 【题目描述】 有一个N*N的矩阵棋盘和N个棋子,现在需要将N个棋子按要求放置在矩阵方格中。 要求: 1、任意两颗棋子不能在同一行 2、任意两个棋子不能在同一列 3、任意两个棋子不能在同一对角线上(下面的红线都是对角线) 根据以上要求,问N个棋子放置到N*N矩阵中有多少种放置方案? 【输入描
阅读全文
摘要:[蓝桥杯 2014 国 A] 排列序数 题目描述 如果用 a b c d 这 个字母组成一个串,有 种,如果把它们排个序,每个串都对应一个序号: abcd 0 abdc 1 acbd 2 acdb 3 adbc 4 adcb 5 bacd 6 badc 7 bcad
阅读全文
摘要:0.题目 1.题解 1.1 DFS搜索(失败) 思路 思路很简单,但是还有可能遇到重复的情况,比如像3->35->353 和 5->53->533 是重复的 但是递归过深,导致超时. 代码 #include<bits/stdc++.h> #define ll long long using name
阅读全文
摘要:1.题目 2.题解 2.1 使用unordered_map存储键值对,使用vector存储城市输入顺序 思路 主要是这里unordered_map无法保存顺序,map会自动排序,所以保存一手输入顺序 unordered_map<string, vector> mp; 这里的vector自动初始化创建
阅读全文
摘要:0.题目 题目描述 几个人一起出去吃饭是常有的事。但在结帐的时候,常常会出现一些争执。 现在有 个人出去吃饭,他们总共消费了 元。其中第 个人带了 元。幸运的是,所有人带的钱的总数是足够付账的,但现在问题来了:每个人分别要出多少钱呢? 为了公平起见
阅读全文
摘要:1.题目 2.解决 2.1 python快速解决 注意python中的 range(1,2020) 范围是[1,2020) !!!! sum = 0 for i in range(1,2020): s = str(i) if ('2' in s or '0' in s or '1' in s or
阅读全文
摘要:0. 题目 1. 题解 1.1 基于中心扩展的字符串处理算法 思路 我们可以选定一个中心,然后从中心开始,向外扩展我们的子串,且能存储之前子串的部分性质(这里便于左等于右的情况) 0. 确定中心点 这里我们用外层一个大循环来表示,中心点即为变量i。 首先分为子串为奇数串和偶数串的情况 奇数串的话比如
阅读全文