算法题
文章平均质量分 54
算法题
可乐大牛
上海某高校在读cs研究生,希望早点发出论文,考公考编 哈哈哈哈
展开
-
【PAT甲级辅导课】 树 数叶子结点
题目来源:数叶子结点题目描述家庭关系可以用家谱树来表示,给定一个家谱树,你的任务是找出其中没有孩子的成员。输入格式第一行包含一个整数 N 表示树中结点总数以及一个整数 M 表示非叶子结点数。接下来 M 行,每行的格式为:ID K ID[1] ID[2] ... ID[K]ID 是一个两位数字,表示一个非叶子结点编号,K 是一个整数,表示它的子结点数,接下来的 K 个 ID[i] 也是两位数字,表示一个子结点的编号。为了简单起见,我们将根结点固定设为 01。所有结点的编号即为 01,02,0原创 2021-02-23 22:11:27 · 279 阅读 · 0 评论 -
【PAT甲级辅导课】 树 树的遍历
题目来源:1497. 树的遍历题目描述一个二叉树,树中每个节点的权值互不相同。现在给出它的后序遍历和中序遍历,请你输出它的层序遍历。输入格式第一行包含整数 N,表示二叉树的节点数。第二行包含 N 个整数,表示二叉树的后序遍历。第三行包含 N 个整数,表示二叉树的中序遍历。输出格式输出一行 N 个整数,表示二叉树的层序遍历。数据范围1≤N≤30输入样例:72 3 1 5 7 6 41 2 3 4 5 6 7输出样例:4 1 6 3 5 7 2思路思路比较简单就是根据中原创 2021-03-06 23:54:07 · 187 阅读 · 0 评论 -
LeetCode究极班系列(6-10)
6. Z 字形变换将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。请你实现这个将字符串进行指定行数变换的函数:string convert(string s, int numRows);输入:原创 2020-09-28 09:31:24 · 346 阅读 · 0 评论 -
leetCode第200场周赛学习
200场周赛1534. 统计好三元组给你一个整数数组 arr ,以及 a、b 、c 三个整数。请你统计其中好三元组的数量。如果三元组 (arr[i], arr[j], arr[k]) 满足下列全部条件,则认为它是一个 好三元组 。0 <= i < j < k < arr.length|arr[i] - arr[j]| <= a|arr[j] - arr[k]| <= b|arr[i] - arr[k]| <= c其中 |x| 表示 x 的绝对值。原创 2020-08-24 21:37:30 · 159 阅读 · 0 评论 -
LeetCode究极班系列(21-25)
21. 合并两个有序链表将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。输入:1->2->4, 1->3->4输出:1->1->2->3->4->4递归class Solution {public: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { if(l1==nullptr) return l2;原创 2020-10-05 15:09:37 · 971 阅读 · 0 评论 -
LeetCode究极班系列(31-35)
31. 下一个排列实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1算法描述目标是找到第比当前序列大的序列的最小值那么 显然为了使得找到的序列最小 我们从往前找 找到一个逆序 因为若是升序 在交换完了之后原创 2020-10-13 12:21:06 · 294 阅读 · 0 评论 -
LeetCode究极班系列(26-30)
26. 删除排序数组中的重复项给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。你不需要考虑数组中超出新长度后面的元素。双指针算法描述 显然的双指针题 i指针遍历所有元素 j指针是原创 2020-10-06 15:57:48 · 105 阅读 · 0 评论 -
LeetCode究极班系列(1-5)
1. 两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]暴力枚举class Solution {public: vector<int> twoSum(vec原创 2020-09-26 10:28:24 · 344 阅读 · 0 评论 -
leetCode第197场周赛学习
197场周赛1512. 好数对的数目给你一个整数数组 nums 。如果一组数字 (i,j) 满足 nums[i] == nums[j] 且 i < j ,就可以认为这是一组 好数对 。返回好数对的数目。示例 1:输入:nums = [1,2,3,1,1,3]输出:4解释:有 4 组好数对,分别是 (0,3), (0,4), (3,4), (2,5) ,下标从 0 开始示例 2:输入:nums = [1,1,1,1]输出:6解释:数组中的每组数字都是好数对示例 3:输入:n原创 2020-07-27 21:57:32 · 193 阅读 · 0 评论 -
leetCode第198场周赛学习
198场周赛1518. 换酒问题小区便利店正在促销,用 numExchange 个空酒瓶可以兑换一瓶新酒。你购入了 numBottles 瓶酒。如果喝掉了酒瓶中的酒,那么酒瓶就会变成空的。请你计算 最多 能喝到多少瓶酒。分析第一轮喝numBottles ,然后再喝[numBottles /numExchange ]的酒,产生[numBottles /numExchange ]+numBottles %numExchange 的空瓶…直到空瓶的个数小于numExchange 就直接返回了原创 2020-07-31 22:06:56 · 288 阅读 · 0 评论 -
leetCode第199场周赛学习
199场周赛1528. 重新排列字符串给你一个字符串 s 和一个 长度相同 的整数数组 indices 。请你重新排列字符串 s ,其中第 i 个字符需要移动到 indices[i] 指示的位置。返回重新排列后的字符串。输入:s = “codeleet”, indices = [4,5,6,7,0,2,1,3]输出:“leetcode”解释:如图所示,“codeleet” 重新排列后变为 “leetcode” 。示例 2:输入:s = “abc”, indices = [0,1,2]输原创 2020-08-22 16:55:49 · 128 阅读 · 0 评论 -
LeetCode究极班系列(11-15)
11. 盛最多水的容器给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 2。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。输入:[1,8,6,2,5,4,8,3,7]输出:原创 2020-10-03 11:16:04 · 252 阅读 · 0 评论 -
LeetCode究极班系列(36-40)
36. 有效的数独判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。数独部分空格内已填入了数字,空白格用 ‘.’ 表示。输入:[[“5”,“3”,".",".",“7”,".",".",".","."],[“6”,".",".",“1”,“9”,“5”,".",".","."],[".",“9”,“8”,".原创 2020-10-16 21:07:06 · 167 阅读 · 0 评论 -
LeetCode每日一题系列 随缘更新
##每日一题##根据前序遍历和中序遍历构造二叉树[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ac5vL8Jq-1595485102472)(C:\Users\86178\Desktop\力扣\图片\2020-05-22_090648.png)]思路:从性质出发,前序数组的开头就是根节点,然后对应到中序数组,得到左子树和右子树,分别再构造左子树和右子树下标对应:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hrGX1T3d-1595原创 2020-07-23 14:21:04 · 218 阅读 · 0 评论 -
LeetCode究极班系列(16-20)
16. 最接近的三数之和给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。输入:nums = [-1,2,1,-4], target = 1输出:2解释:与 target 最接近的和是 2 (-1 + 2 + 1 = 2) 。暴力枚举class Solution {public: int threeSumClosest(vector<in原创 2020-10-04 11:19:26 · 165 阅读 · 0 评论 -
leetCode第196场周赛学习
196场周赛1502. 判断能否形成等差数列分析排序一下 然后枚举 只要不满足等差数列性质就返回false,否则就返回true暴力class Solution {public: bool canMakeArithmeticProgression(vector<int>& arr) { sort(arr.begin(),arr.end()); int n=arr.size(); for(int i=2;i<n;i原创 2020-08-15 13:30:52 · 108 阅读 · 0 评论 -
LeetCode究极班系列(41-45)
41. 缺失的第一个正数给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数。输入: [1,2,0]输出: 3提示:你的算法的时间复杂度应为O(n),并且只能使用常数级别的额外空间。算法描述将所有的数 存入set去重 然后从1开始枚举所有正整数 不存在就输出哈希class Solution {public: int firstMissingPositive(vector<int>& nums) { unordered_set原创 2020-10-21 13:30:01 · 191 阅读 · 0 评论 -
leetCode第195场周赛学习
1496. 判断路径是否相交给你一个字符串 path,其中 path[i] 的值可以是 ‘N’、‘S’、‘E’ 或者 ‘W’,分别表示向北、向南、向东、向西移动一个单位。机器人从二维平面上的原点 (0, 0) 处开始出发,按 path 所指示的路径行走。如果路径在任何位置上出现相交的情况,也就是走到之前已经走过的位置,请返回 True ;否则,返回 False1 <= path.length <= 10^4path 仅由 {'N', 'S', 'E', 'W} 中的字符组成.原创 2020-08-07 21:32:17 · 375 阅读 · 0 评论 -
二分
二分的本质二分的本质就是将一个最优化问题转换成一个判定问题所以若是某一步需要计算一个最优值,我们无法直接求得,但是容易判断一个但是这个最优值一定在区间内部,并且区间的中点...原创 2021-01-25 22:10:12 · 114 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day18整数集合划分
题目来源:整数集合划分题目描述给定一个包含 N 个正整数的集合,请你将它划分为两个集合 A1 和 A2,其中 A1 包含 n1 个元素,A2 包含 n2 个元素。集合中可以包含相同元素。用 S1 表示集合 A1 内所有元素之和,S2 表示集合 A2 内所有元素之和。请你妥善划分,使得 |n1−n2| 尽可能小,并在此基础上 |S1−S2| 尽可能大。输入格式第一行包含整数 N。第二行包含 N 个正整数。输出格式再一行中输出 |n1−n2| 和 |S1−S2|,两数之间空格隔开。数据范围原创 2021-02-08 21:20:56 · 148 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day25献给阿尔吉侬的花束
题目来源:题目描述阿尔吉侬是一只聪明又慵懒的小白鼠,它最擅长的就是走各种各样的迷宫。今天它要挑战一个非常大的迷宫,研究员们为了鼓励阿尔吉侬尽快到达终点,就在终点放了一块阿尔吉侬最喜欢的奶酪。现在研究员们想知道,如果阿尔吉侬足够聪明,它最少需要多少时间就能吃到奶酪。迷宫用一个 R×C 的字符矩阵来表示。字符 S 表示阿尔吉侬所在的位置,字符 E 表示奶酪所在的位置,字符 # 表示墙壁,字符 . 表示可以通行。阿尔吉侬在 1 个单位时间内可以从当前的位置走到它上下左右四个方向上的任意一个位置,但不原创 2021-02-20 22:25:15 · 144 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day39 最大波动
题目来源:最大波动题目描述小明正在利用股票的波动程度来研究股票。小明拿到了一只股票每天收盘时的价格,他想知道,这只股票连续几天的最大波动值是多少,即在这几天中某天收盘价格与前一天收盘价格之差的绝对值最大是多少。输入格式输入的第一行包含了一个整数 n,表示小明拿到的收盘价格的连续天数。第二行包含 n 个正整数,依次表示每天的收盘价格。输出格式输出一个整数,表示这只股票这 n 天中的最大波动值。数据范围对于所有评测用例,2≤n≤1000。股票每一天的价格为 1 到 10000 之间的整数。原创 2021-02-22 15:23:34 · 133 阅读 · 1 评论 -
【acwing 寒假每日一题(入门组)】day16 阶乘
题目来源:阶乘题目描述N 的阶乘(记作 N!)是指从 1 到 N(包括 1 和 N)的所有整数的乘积。阶乘运算的结果往往都非常的大。现在,给定数字 N,请你求出 N! 的最右边的非零数字是多少。例如 5!=1×2×3×4×5=120,所以 5! 的最右边的非零数字是 2。输入格式共一行,包含一个整数 N。输出格式输出一个整数,表示 N! 的最右边的非零数字。数据范围1≤N≤1000输入样例:7输出样例:4思路思路就是求出n!末尾有几个0,假设为k,然后n! /10k 在m原创 2021-02-07 20:38:21 · 119 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day40 折点计数
题目来源:折点计数题目描述给定 n 个整数表示一个商店连续 n 天的销售量。如果某天之前销售量在增长,而后一天销售量减少,则称这一天为折点,反过来如果之前销售量减少而后一天销售量增长,也称这一天为折点。其他的天都不是折点。如下图中,第 3 天和第 6 天是折点。给定 n 个整数 a1,a2,…,an 表示销售量,请计算出这些天总共有多少个折点。为了减少歧义,我们给定的数据保证:在这 n 天中相邻两天的销售量总是不同的,即 ai−1≠ai。注意,如果两天不相邻,销售量可能相同。输入格式输原创 2021-02-22 15:30:25 · 170 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day3蛇形矩阵
题目来源:https://www.acwing.com/problem/content/758/题目描述:输入两个整数n和m,输出一个n行m列的矩阵,将数字 1 到 n*m 按照回字蛇形填充至矩阵中。具体矩阵形式可参考样例。输入格式输入共一行,包含两个整数n和m。输出格式输出满足要求的矩阵。矩阵占n行,每行包含m个空格隔开的整数。数据范围加粗样式1≤n,m≤100输入样例:3 3输出样例:1 2 38 9 47 6 5思路模拟这个蛇皮走位就好了刚开始向右走,撞墙了向下走原创 2021-01-21 14:13:59 · 133 阅读 · 1 评论 -
【acwing 寒假每日一题(入门组)】day4红与黑
题目来源https://www.acwing.com/problem/content/1115/题目描述有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻(上下左右四个方向)的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。输入格式输入包括多个数据集合。每个数据集合的第一行是两个整数 W 和 H,分别表示 x 方向和 y 方向瓷砖的数量。在接下来的 H 行中,每行包括 W 个字符。每个字符表示一块瓷砖的颜色,规则如下1)‘.’原创 2021-01-21 15:29:05 · 115 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day22最大的和
题目描述给定一个包含整数的二维矩阵,子矩形是位于整个阵列内的任何大小为1 * 1或更大的连续子阵列。矩形的总和是该矩形中所有元素的总和。在这个问题中,具有最大和的子矩形被称为最大子矩形。例如,下列数组:0 -2 -7 09 2 -6 2-4 1 -4 1-1 8 0 -2其最大子矩形为:9 2-4 1-1 8它拥有最大和15。输入格式输入中将包含一个N*N的整数数组。第一行只输入一个整数N,表示方形二维数组的大小。从第二行开始,输入由空格和换行符隔开的N2个整数,它们即为二原创 2021-02-11 11:39:32 · 84 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day32 比例简化
题目来源:比例简化题目描述在社交媒体上,经常会看到针对某一个观点同意与否的民意调查以及结果。例如,对某一观点表示支持的有1498人,反对的有902人,那么赞同与反对的比例可以简单的记为1498:902。不过,如果把调查结果就以这种方式呈现出来,大多数人肯定不会满意。因为这个比例的数值太大,难以一眼看出它们的关系。对于上面这个例子,如果把比例记为5:3,虽然与真实结果有一定的误差,但依然能够较为准确地反映调查结果,同时也显得比较直观。现给出支持人数A,反对人数B,以及一个上限L,请你将A:B化简原创 2021-02-21 21:54:31 · 152 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day31 明明的随机数
题目来源:明明的随机数题目描述明明想在学校中请一些同学一起做一项问卷调查。为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数,对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。输入格式输入文件包含2行,第1行为1个正整数,表示所生成的随机数的个数:N 。第2行有N个用空格隔开的正整数,为所产生的随机数。输出格式输出文件也是2行,第1行为1个原创 2021-02-21 20:57:38 · 169 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day15货币系统
题目来源:货币系统题目描述给定 V 种货币(单位:元),每种货币使用的次数不限。不同种类的货币,面值可能是相同的。现在,要你用这 V 种货币凑出 N 元钱,请问共有多少种不同的凑法。输入格式第一行包含两个整数 V 和 N。接下来的若干行,将一共输出 V 个整数,每个整数表示一种货币的面值。输出格式输出一个整数,表示所求总方案数。数据范围1≤V≤25,1≤N≤10000答案保证在long long范围内。输入样例:3 101 2 5输出样例:10思路典型的完全背包问题,原创 2021-02-07 16:05:24 · 87 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day27 ISBN号码
题目来源:ISBN号码题目描述每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔之后的五位数字代表该书在出版社的编号;最后一位为识别码。识别码的计算方法如下:首原创 2021-02-21 18:55:28 · 130 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day30 不高兴的津津
题目来源:不高兴的津津题目描述津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。输入格式输入文件包括七行数据,分别表示周一到周日的日程安排。每行包括两个小于10的非负整数,用空格隔原创 2021-02-21 20:37:11 · 112 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day37 Z字形扫描
题目来源:Z字形扫描题目描述在图像编码的算法中,需要将一个给定的方形矩阵进行 Z 字形扫描(Zigzag Scan)。给定一个 n×n 的矩阵,Z 字形扫描的过程如下图所示:对于下面的 4×4 的矩阵,1 5 3 93 7 5 69 4 6 47 3 1 3对其进行 Z 字形扫描后得到长度为 16 的序列:1 5 3 9 7 3 9 5 4 7 3 6 6 4 1 3。请实现一个 Z 字形扫描的程序,给定一个 n×n 的矩阵,输出对这个矩阵进行 Z 字形扫描的结果。输入格式输入的原创 2021-02-22 12:09:00 · 123 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day41 跳一跳
题目来源:跳一跳题目描述近来,跳一跳这款小游戏风靡全国,受到不少玩家的喜爱。简化后的跳一跳规则如下:玩家每次从当前方块跳到下一个方块,如果没有跳到下一个方块上则游戏结束。如果跳到了方块上,但没有跳到方块的中心则获得 1 分;跳到方块中心时,若上一次的得分为 1 分或这是本局游戏的第一次跳跃则此次得分为 2 分,否则此次得分比上一次得分多两分(即连续跳到方块中心时,总得分将 +2,+4,+6,+8…)。现在给出一个人跳一跳的全过程,请你求出他本局游戏的得分(按照题目描述的规则)。输入格式输入包含原创 2021-02-22 19:51:11 · 170 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day1货仓选址
题目来源 https://www.acwing.com/problem/content/description/106/题目描述在一条数轴上有 N 家商店,它们的坐标分别为 A1~AN。现在需要在数轴上建立一家货仓,每天清晨,从货仓到每家商店都要运送一车商品。为了提高效率,求把货仓建在何处,可以使得货仓到每家商店的距离之和最小。输入格式第一行输入整数N。第二行N个整数A1~AN。输出格式输出一个整数,表示距离之和的最小值。数据范围1≤N≤100000,0≤Ai≤40000输入样例:原创 2021-01-20 22:14:27 · 329 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day14 棋盘挑战
题目来源:棋盘挑战题目描述给定一个 N×N 的棋盘,请你在上面放置 N 个棋子,要求满足:每行每列都恰好有一个棋子每条对角线上都最多只能有一个棋子 1 2 3 4 5 6 -------------------------1 | | O | | | | | -------------------------2 | | | | O | | | -------------------------3 | |原创 2021-02-07 15:02:25 · 231 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day24数独检查
题目来源:数独检查题目描述数独是一种流行的单人游戏。目标是用数字填充9x9矩阵,使每列,每行和所有9个非重叠的3x3子矩阵包含从1到9的所有数字。每个9x9矩阵在游戏开始时都会有部分数字已经给出,通常有一个独特的解决方案。给定完成的N2∗N2数独矩阵,你的任务是确定它是否是有效的解决方案。有效的解决方案必须满足以下条件:每行包含从1到N2的每个数字,每个数字一次。每列包含从1到N2的每个数字,每个数字一次。将N2∗N2矩阵划分为N2个非重叠N∗N子矩阵。 每个子矩阵包含从1到N2的每原创 2021-02-19 20:22:56 · 157 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day34 质因数分解
题目来源:质因数分解题目描述已知正整数n是两个不同的质数的乘积,试求出较大的那个质数。输入格式输入只有一行,包含一个正整数n。输出格式输出只有一行,包含一个正整数p,即较大的那个质数。数据范围6≤n≤2∗109输入样例:21输出样例:7思路这题比较简单,题目都说了n是两个质数的乘积,那么我们从前往后枚举,可以整除n的肯定是较小的那个因子,然后输出n和较小因子的商 就是答案了代码#include<bits/stdc++.h>using namespace std原创 2021-02-21 22:17:41 · 148 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day9奖学金
题目来源:奖学金题目描述某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前五名名学生的学号和总分。注意,在前5名同学中,每个人的奖学金都不相同,因此,你必须严格按上述规则排原创 2021-01-27 11:31:53 · 114 阅读 · 0 评论 -
【acwing 寒假每日一题(入门组)】day10翻硬币
题目来源:翻硬币题目描述小明正在玩一个“翻硬币”的游戏。桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。比如,可能情形是:oo*oooo如果同时翻转左边的两个硬币,则变为:oooo***oooo现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢?我们约定:把翻动相邻的两个硬币叫做一步操作。输入格式两行等长的字符串,分别表示初始状态和要达到的目标状态。输出格式一个整数,表示原创 2021-01-27 22:29:42 · 119 阅读 · 0 评论