C++
lylyun
这个作者很懒,什么都没留下…
展开
-
力扣学习 4,14
最长回文子串给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”提示:1 <= s.length <= 1000s 仅由数字和英文字母组成class Solution {private: pair<int, int> expandAroundCenter(const string& s, int le.原创 2022-04-14 08:45:03 · 176 阅读 · 1 评论 -
力扣学习4.6
剑指 Offer 60. n个骰子的点数把n个骰子扔在地上,所有骰子朝上一面的点数之和为s。输入n,打印出s的所有可能的值出现的概率。你需要用一个浮点数数组返回答案,其中第 i 个元素代表这 n 个骰子所能掷出的点数集合中第 i 小的那个的概率。示例 1:输入: 1输出: [0.16667,0.16667,0.16667,0.16667,0.16667,0.16667]示例 2:输入: 2输出: [0.02778,0.05556,0.08333,0.11111,0.13889,0.16667原创 2022-04-06 16:34:02 · 157 阅读 · 0 评论 -
力扣学习 4.5
剑指 Offer 38. 字符串的排列输入一个字符串,打印出该字符串中字符的所有排列。你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。示例:输入:s = “abc”输出:[“abc”,“acb”,“bac”,“bca”,“cab”,“cba”]限制:1 <= s 的长度 <= 8在这里插入代码片```#include<iostream>#include<stdio.h>#include<vector>#include<s原创 2022-04-04 15:57:46 · 105 阅读 · 0 评论 -
二叉搜索树的后序遍历序列
二叉搜索树的后序遍历序列输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true,否则返回 false。假设输入的数组的任意两个数字都互不相同。参考以下这颗二叉搜索树: 5/ \2 6/ 1 3示例 1:输入: [1,6,3,2,5]输出: false示例 2:输入: [1,3,2,6,5]输出: true提示:数组长度 <= 1000来源:力扣(LeetCode)链接:https://leetcode-cn.com/proble原创 2022-03-02 10:47:37 · 123 阅读 · 0 评论 -
链表处理,两数相加
2. 两数相加难度中等5878收藏分享切换为英文接收动态反馈给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 =...原创 2021-03-25 09:09:30 · 309 阅读 · 0 评论 -
链表反转
92. 反转链表 II难度中等817给你单链表的头指针head和两个整数left和right,其中left <= right。请你反转从位置left到位置right的链表节点,返回反转后的链表。示例 1:输入:head = [1,2,3,4,5], left = 2, right = 4输出:[1,4,3,2,5]示例 2:输入:head = [5], left = 1, right = 1输出:[5]提示:链表中...原创 2021-03-18 22:42:57 · 106 阅读 · 0 评论 -
Fractions
链接:https://ac.nowcoder.com/acm/contest/7854/A来源:牛客网题目描述You are given a positive integer n.Find a sequence of fractions ai / bi, i = 1…k (where ai and bi are positive integers) for some k such that:bi divides n, 1 < bi < n for i = 1…k 1 ≤ .翻译 2020-10-06 17:30:24 · 232 阅读 · 0 评论 -
Flowers(二分答案)
链接:https://ac.nowcoder.com/acm/contest/7830/J来源:牛客网题目描述Recently Jack becomes much more romantic. He would like to prepare several bunches of flowers.Each bunch of flowers must have exactly M flowers. As Jack does not want to be boring, he hopes tha.原创 2020-10-11 14:11:13 · 268 阅读 · 0 评论 -
分块除法 Fear Factoring
The Slivians are afraid of factoring; it's just, well, difficult.Really, they don't even care about the factors themselves, just how much they sum to.We can defineF(n)F(n)as the sum of all of the factors ofnn; soF(6) = 12F(6)=12andF(12) = 28F(12)...原创 2020-08-09 21:45:29 · 162 阅读 · 0 评论 -
P. Purple Rain (找子序列极点)
Purple rain falls in the magic kingdom of Linearland which is a straight, thin peninsula.On close observation however, Professor Nelson Rogers finds that the purple rain is actually a mix of red and blue raindrops.In his zeal, he records the location..原创 2020-08-09 21:39:14 · 273 阅读 · 0 评论 -
Origami, or the art of folding paper(折叠纸张)
Master Grus is a famous origami (paper folding) artist, who is enthusiastic about exploring the possibility of origami art. For future creation, he is now planning fundamental experiments to establish the general theory of origami.One rectangular piece of原创 2020-08-06 11:53:55 · 964 阅读 · 0 评论 -
拓展欧几里得经典例题
LCS代表最长的公共子序列,是一个众所周知的问题。这个问题中的序列意味着一个整数列表,而序列X被认为是另一个序列Y的子序列,当序列X可以从序列Y中删除零个或多个元素而不改变其余元素的顺序时,则可以得到序列X。在这个问题中,给你两个序列,你的任务是找到最长序列的长度,这是两个给定序列的子序列。你没有得到序列本身。对于每个序列,给出三个整数N,F和D,其中N是序列的长度,F是序列中的第一个元素。除第一个元素外,每个元素都大于它前面的元素D。例如,N=5,F=3和D=4表示如下序列:[3,7,11,1原创 2020-07-25 16:15:04 · 880 阅读 · 0 评论 -
第三次训练(递归问题)
暑假训练三(递归)[各种迷惑时间超限]递归这块讲究的是如何剪枝提高效率,减少运行时间,说起来真正运算不是特别变态,但是剪枝提高效率,就很有意思。(因为你算的递归的次数就是n次方,所以要尽量减小递归的次数)1.Symmetric Order用两个字符串,按照要求改变位置即可2. Sticks这道题使用dfs贪心算出所能拼凑出的长度,但是难点就是时间超限(代码优化),比赛无法用最优化(即时间最快的代码),要多学习别人的代码写法。# include <iostream..原创 2020-07-13 16:27:43 · 248 阅读 · 0 评论 -
俺的暑假训练赛2(基本模拟训练)
1.速度限制先设结构体排序,通过公式计算就可以得出来结果。2. 骑车上学 计算0时刻及以后出发的人到达的最早时间,然后向上取整即可得出答案。3. 自数 使用数组 a 表示每个数是否有生成器 For循环,挨个计算,算出每个数的下一个生成数,如果这个数之前没有出现生成器,则a[i] == 0, 输出I ,否则continue。4. 金币 数据在int范围内,使用数组a 表示第i 天的总金币,输出即可5. The 3n + 1 prob...原创 2020-07-08 20:10:17 · 140 阅读 · 0 评论 -
递推图是否通路
链接:https://ac.nowcoder.com/acm/contest/6106/L来源:牛客网题目描述小梁变强之后决定建设自己的道馆,她特别喜欢去其他的道馆串门。但是有些道馆之间没有道路连通,于是小梁想知道自己能不能去她想去的道馆,你能帮她写一个程序来查询两个道馆之间是否互相存在道路联通吗;如果存在输出“YES”,反之输出“NO”。输入描述:第一行为三个整数N为道馆个数,M为线路条数,T为查询次数(1≤N<1000,1≤M<1000,1≤T<1..原创 2020-06-27 15:19:03 · 172 阅读 · 0 评论 -
[codeforces 1365C] Rotation Matching 寻找偏移量
C. Rotation Matchingtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputAfter the mysterious disappearance of Ashish, his two favourite disciples Ishika and Hriday, were each left with one原创 2020-06-21 16:46:54 · 210 阅读 · 0 评论 -
单调栈 幸运子序列
题目描述牛牛得到一个长度为n的整数序列V,牛牛定义一段连续子序列的幸运值为这段子序列中最大值和次大值的异或值(次大值是严格的次大)。牛牛现在需要求出序列V的所有连续子序列中幸运值最大是多少。请你帮帮牛牛吧。输入描述:第一行一个整数n,即序列的长度。(2<= n <= 100000)第二行n个数,依次表示这个序列每个数值V[i], (1 ≤ V[i] ≤ 10^8)且保证V[1]到V[n]中至少存在不同的两个值.输出描述:输出一个整数,即最大的幸运值示例1输入原创 2020-05-21 17:58:41 · 240 阅读 · 1 评论 -
小猪 测试最大值
有 1000 只水桶,其中有且只有一桶装的含有毒药,其余装的都是水。它们从外观看起来都一样。如果小猪喝了毒药,它会在 15 分钟内死去。问题来了,如果需要你在一小时内,弄清楚哪只水桶含有毒药,你最少需要多少只猪?回答这个问题,并为下列的进阶问题编写一个通用算法。进阶:假设有 n 只水桶,猪饮水中毒后会在 m 分钟内死亡,你需要多少猪(x)就能在 p 分钟内找出 “有毒” 水桶...原创 2020-04-18 20:41:49 · 338 阅读 · 0 评论 -
单调队列(P1714 切蛋糕)
题目描述今天是小Z的生日,同学们为他带来了一块蛋糕。这块蛋糕是一个长方体,被用不同色彩分成了N个相同的小块,每小块都有对应的幸运值。小Z作为寿星,自然希望吃到的第一块蛋糕的幸运值总和最大,但小Z最多又只能吃M小块(M≤N)的蛋糕。吃东西自然就不想思考了,于是小Z把这个任务扔给了学OI的你,请你帮他从这N小块中找出连续的k块蛋糕(k≤M),使得其上的幸运值最大。输入格式输入文件c...原创 2020-04-17 20:44:25 · 416 阅读 · 0 评论 -
C. Yet Another Walking Robot map用法
C. Yet Another Walking Robottime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputThere is a robot on a coordinate plane. Initially, th...原创 2020-04-12 20:49:55 · 203 阅读 · 0 评论 -
K 进制数 方案数 的动态规划
问题 1117: K-进制数时间限制: 1Sec 内存限制: 128MB 提交: 2189 解决: 823题目描述考虑包含N位数字的K-进制数. 定义一个数有效, 如果其K-进制表示不包含两连续的0.考虑包含N位数字的K-进制数. 定义一个数有效, 如果其K-进制表示不包含两连续的0.例:1010230 是有效的7位数1000198 无效00012...原创 2020-04-12 17:28:13 · 154 阅读 · 0 评论 -
线段覆盖问题
E. Monotonic Renumerationtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are given an arrayaaconsisting ofnnintegers. Le...原创 2020-03-29 23:28:27 · 250 阅读 · 0 评论 -
快速幂
Problem Description soda has a set S with n integers {1,2,…,n}. A set is called key set if the sum of integers in the set is an even number. He wants to know how many nonempty subsets of S are key set...原创 2020-03-27 22:51:12 · 156 阅读 · 0 评论 -
地雷
题目背景小埋总是在家中打游戏,一天,她突然想玩Windows自带的扫雷,在一旁的哥哥看见了,想起了自己小时候信息课在机房玩扫雷的日子,便兴致勃勃地开始教小埋扫雷。然而,小埋还是不明白\mathrm{3bv}3bv(Bechtel's Board Benchmark Value,每局将所有非雷的方块点开所需最少左键点击数,参见扫雷网的教程)怎么算,于是她找到了你。题目描述小埋会告...原创 2020-03-27 18:40:06 · 337 阅读 · 0 评论 -
简单的背包问题
链接:https://ac.nowcoder.com/acm/contest/190/G来源:牛客网题目描述CSL手上有n个苹果,第i个苹果的质量是wi,现在他想把这些苹果分给他的好朋友wavator和tokitsukaze。但是CSL为了不让他们打架,根据质量决定尽量地均分成两堆分给他们。现在CSL想知道到底给每个人分多少质量的苹果。注意:苹果不能劈开来,并且如果不能正好均分,t...原创 2020-03-23 11:20:39 · 254 阅读 · 0 评论 -
枚举法
题目描述这一天,牛牛与 牛魔王相遇了――然而这并不在 牛牛期望之中。牛魔王不出意料又给 牛牛一道看似很难的题目:求有多少个不同的正整数三元组(i,j,k)\text{}(i,j,k)(i,j,k) 满足 i+j=k\sqrt i+\sqrt j=\sqrt ki+j=k,且 i×j≤ni\times j\leq ni×j≤n。牛牛并不会做,你能略施援手吗?当两个三元组...原创 2020-02-06 23:05:11 · 133 阅读 · 0 评论 -
B - Largest prime factor
Everybody knows any number can be combined by the prime number.Now, your task is telling me what position of the largest prime factor.The position of prime 2 is 1, prime 3 is 2, and prime 5 is 3, ...原创 2020-02-02 17:02:55 · 198 阅读 · 0 评论 -
寒假训练 B先生与多边形的角度
输出量标准输出在一天安静的日子,B先生突然决定画个角度a在他的球场上。外星人已经访问了他的领域,并留下了许多不同的几何图形。其中一个数字是正则凸n-贡(具有正则凸多边形n)。这就是为什么B先生决定使用这个多边形。现在B先生必须找到三个不同的顶点v1,v2,v3这样的角度(在哪里v2是角的顶点,并且v1和v3躺在一边)尽可能靠近a。换句话说,价值应该是最小的可能。如果有许多最优解...原创 2020-01-15 18:48:31 · 133 阅读 · 0 评论 -
1195: 猴子选大王(结构体专题)
题目描述n只猴子围坐成一个圈,按顺时针方向从1到n编号。然后从1号猴子开始沿顺时针方向从1开始报数,报到m的猴子出局,再从刚出局猴子的下一个位置重新开始报数,如此重复,直至剩下一个猴子,它就是大王。输入输入两个整数n和m,1<=m<=n<=100。输出输出猴王的编号 样例输入 Copy8 3样例输出 Copy7#include<...原创 2019-09-23 22:39:10 · 442 阅读 · 1 评论 -
1196: 数星星(二)(结构体专题)
题目描述一天,小明坐在院子里数星星,Gardon就出了个难题给他,让他数数天上的星星最多有多少个是在同一条直线上的。天上的星星太多了,小明马上就看花了眼,你能写个程序来帮他计算么?输入首先输入一个整数N(N<=300),接下来的N对数每对表示一个星星的位置(星星的坐标在-10000到10000之间,精确到小数点后1位)。没有两个星星会在同一个位置。输出一个整数,表示一条直...原创 2019-09-29 15:39:17 · 931 阅读 · 0 评论 -
1164: 字符串加密
题目描述输入一串字符(长度不超过100)和一个正整数k,将其中的英文字母加密并输出加密后的字符串,非英文字母不变。加密思想:将每个字母c加一个序数k,即用它后面的第k个字母代替,变换公式:c=c+k。如果字母为z,则后一个字母是a,也就是字母字符形成一个圆。输入输入第一行是若干字符,以回车结束。输入第二行是一个整数k,k是int范围内的正整数;输出输出加密后的字符串。样例输...原创 2019-09-04 22:35:40 · 356 阅读 · 0 评论 -
1102: 火车票退票费计算(函数专题)
题目描述2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费。同时,车票退票费的计算方法不再四舍五入到元为单位,而是以5角为单位:尾数小于0.25元的舍去、不小于0.25元且小于0.75元的计为0.5元、不小于0.75元的进为1元。编写一个函数,计算退票费,假定退票时间举例开车时间在48小时以上。函数原型如下:double CancelFee(doubl...原创 2019-07-25 17:26:45 · 389 阅读 · 0 评论 -
1176: 查找最大字符串(指针专题)
题目描述从键盘上输入多个字符串(每个串不超过5个字符且没有空格),用”*****”作为串输入结束的标记。从所输入的若干字符串中,找出一个最大的串,并输出该串。要求最大串的查找通过调用编写的函数实现void find(char *name[], int n, int *p){//在包含n个字符串的二维字符数组name中,查找值最大的字符串,将其下标存入指针p所指内存单元} 输入...原创 2019-09-07 21:54:00 · 1455 阅读 · 0 评论 -
1175: 矩阵转置(指针专题)
题目描述给定一个m行n列的二维矩阵,输出其转置矩阵。1<=m、n<=100000,可能是1行100000列,也可能是10000行50列。你可能不能预定义数组的大小了,你要学会使用动态内存分配哦。输入输入第一行是m和n,然后是一个m行n列的矩阵。输出输出转置后的矩阵样例输入 Copy3 41 2 3 4 5 6 7 8 9 5 4 6 样例输出...原创 2019-09-07 16:55:30 · 354 阅读 · 1 评论 -
1152: 二分搜索
题目描述在有序序列中查找某一元素x。输入首先输入一个正整数n(n<=100000),表示该序列有n个整数,然后按从小到大的顺序输入n个整数;接着是一个正整数m,表示有m次查找;最后是m个整数,表示m个要查找的整数x。输出对于每一次查找,有一行输出。若序列中存在要查找的元素x,则输出元素x在序列中的序号(序号从0开始);若序列中不存在要查找的元素x,则输出"Not ...原创 2019-07-31 15:54:09 · 290 阅读 · 0 评论 -
1151: 大整数加法
题目描述比利经常会碰到超大整数的加法运算,而普通的计算器上无法进行。因此他想你帮他写一个程序来计算结果。输入输入数据有多组。首先输入一个整数T,表示有T组输入。每组输入两个大整数,并用空格隔开。每个整数最多1000位。没有负数输入。输出对于每组输入,输出两个整数的和,单独占一行。样例输入 Copy21 2112233445566778899 998877665...原创 2019-07-31 15:34:11 · 227 阅读 · 0 评论 -
1119: 一维数组排序
题目描述对一维数组按照从小到大的顺序排序。程序定义函数sort()来实现数组a的排序。函数原型如下:void sort(int a[], int n);数组元素的输出调用PrintArr()。输入第一行输入一个整数n(1<=n<=10),表示数组有n个整数;第二行输入n个整数。输出输出占一行。对这n个整数数按照从小到大的顺序输出,数据之间用一个空格隔开。...原创 2019-07-26 15:38:43 · 231 阅读 · 0 评论 -
1118: 数列有序
题目描述一个非递减有序的整型数组有n个元素,给定一个整数num,将num插入该序列的适当位置,使序列仍保持非递减有序。要求定义一个函数insert(),将整数num插入在数组a的适当位置上,函数原型如下:int insert(int a[], int n, int num);另外函数仍然调用以前定义过的函数PrintArr()输出数组所有元素。输入输入有三行。第一行是一个正...原创 2019-07-26 15:28:55 · 785 阅读 · 0 评论 -
1113: 递归调用的次数统计(函数专题)
题目描述如下程序的功能是计算 Fibonacci数列的第n项。函数fib()是一个递归函数。请你改写该程序,计算第n项的同时,统计调用了多少次函数fib(包括main()对fib()的调用)。#include<stdio.h>int fib(int k);int main(void ){ int n; scanf("%d", &n); pr...原创 2019-07-26 14:49:42 · 371 阅读 · 0 评论 -
1111: 多个整数的逆序输出(函数专题)C++
题目描述输入n和n个整数,以与输入顺序相反的顺序输出这n个整数。要求不使用数组,而使用递归函数实现。递归函数实现过程如下:void inverse(int n){ if(n >1) { (1) 读入一个整数,存入num; (2) 将后面的n-1个数逆序输出: inverse(n-1); (3) 输出num;...原创 2019-07-26 14:29:12 · 915 阅读 · 0 评论