算法之路
文章平均质量分 80
__Wedream__
Keep learning!
展开
-
排序算法代码仓库
经典排序算法插入排序#include <iostream>#include <algorithm>#include <cstdio>using namespace std;const int N=1e6+1000;int n;int a[N];void insert_sort(){ for(int i=2; i<=n; i++) { if(a[i]<a[i-1]) {原创 2022-03-28 19:38:12 · 1001 阅读 · 0 评论 -
逆序对个数(归并排序)
数对 (归并排序)题目链接:https://ac.nowcoder.com/acm/contest/27274/H来源:牛客网Problem Description链接:https://ac.nowcoder.com/acm/contest/27274/H来源:牛客网在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。比如一个序列为4 5 1 3 2, 那么这个序列的逆序数为7,逆序对分别为(4, 1),原创 2022-02-03 20:23:46 · 1319 阅读 · 0 评论 -
leetcode-第247场周赛-5798循环轮转矩阵(模拟题)
5798. 循环轮转矩阵(模拟题)题目链接:https://leetcode-cn.com/problems/cyclically-rotating-a-grid/题目:给你一个大小为 m x n 的整数矩阵 grid ,其中 m 和 n 都是 偶数 ;另给你一个整数 k 。矩阵由若干层组成,如下图所示,每种颜色代表一层:矩阵的循环轮转是通过分别循环轮转矩阵中的每一层完成的。在对某一层进行一次循环旋转操作时,层中的每一个元素将会取代其 逆时针 方向的相邻元素。轮转示例如下:返回执行 k原创 2021-06-28 10:07:45 · 292 阅读 · 0 评论 -
群巨救我……(期望DP)
群巨救我……(期望DP)题目链接:https://ac.nowcoder.com/acm/contest/17583/E题目来源:牛客网Problem Description众所周知,牛可乐 的口胡能力十分强大牛可乐 要讲 n 件事情,我们把这些事情从 1∼n 标号。牛可乐每讲一件事需要耗费一个单位的时间,但是牛可乐讲事情和普通人不同:牛可乐在讲完 第 i 件事时,只有 pi{p_i}pi的概率继续讲下一件事(第 i+1 件),也就是说,牛可乐讲完第 i 件事后有 (1-pip_ipi)的原创 2021-06-18 00:22:29 · 124 阅读 · 3 评论 -
链表的加法
链表是一种递归的数据结构,它或者为空,或者是指向一个结点的引用,该节点还有一个元素和一个指向另一条链表的引用。链表是一种线性表,但它不像顺序表那样连续存储元素,而是在每一个节点里存到下一个节点的指针。原创 2021-03-21 21:21:33 · 363 阅读 · 0 评论 -
分治法找两个序列中找第k小
在计算机科学中,分治法是建基于多项分支递归的一种很重要的算法范型。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(归并排序、快速排序)、傅立叶变换(快速傅立叶变换)。另一方面,理解及设计分治法算法的能力需要一定时间去掌握。正如以归纳法去证明一个理论,为了使递归能够推行,很多时候需要用一个较为概括或复杂的问题去取代原有问题。而且并没有一个系统性的方法去适当地概括问题原创 2020-11-11 00:05:36 · 1147 阅读 · 0 评论 -
分治法求众数
分治法求众数Problem Description给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。例如,S={1,2,2,2,3,5}。多重集S的众数是2,其重数为3。求众数方法很多,现要求你用分治算法来试一试,并分析其效率。编程任务:对于给定的由n个自然数组成的多重集S,采用分治算法编程计算S的众数及其重数。Input第1行多重集S中元素个数n;接下来的一行为集合S,有n个自然数。( n < 1000000 )Out原创 2020-11-08 10:29:52 · 14518 阅读 · 21 评论 -
输出所有组合(二进制枚举)
输出所有组合(二进制枚举)Problem Description题目:输入一个字符串,输出该字符串中字符的所有组合。举个例子,如果输入abc,它的组合有a、b、c、ab、ac、bc、abc。采用递归的方法来实现所有组合的输出。Input输入一个串长n和字符串,n<10。字符串不含重复元素。Output输出该字符串中字符的所有组合,并在每个组合前标示序号。注意:为了输出的组合有序而便于OJ系统评判,约定无论输入的初始字符串是什么顺序的,最后输出都按元素升序进行挑选的组合。原创 2020-11-07 22:49:05 · 927 阅读 · 0 评论 -
最小覆盖子串(Hard)
目录最小覆盖子串(滑动窗口+字典)Problem DescriptionSample InputSample OutputHintSolutionCode最小覆盖子串(滑动窗口+字典)题目链接:https://leetcode-cn.com/problems/minimum-window-substring/题目来源:leetcode题目难度:困难Problem Description给你一个字符串 S、一个字符串 T 。请你设计一种算法,可以在 O(n) 的时间复杂度内,从字符串 S 里面找原创 2020-11-01 13:24:54 · 196 阅读 · 0 评论 -
深度学习 Feeding behavior recognition for group-housed pigs with the Faster R-CNN 论文篇
Feeding behavior recognition for group-housed pigs with the Faster R-CNN—— 在Faster R-CNN中对群养猪的进食行为识别Keywords:Pig identification (猪只识别)Feeding behavior recognition (进食行为识别)Faster R-CNN摘要(Abstract)猪的进食行为是猪的健康状况的重要指标,因此实现自动化的行为识别是猪场精准养殖的关键问题。在视频监控技原创 2020-10-16 13:48:53 · 1622 阅读 · 5 评论 -
樱花(线性筛+唯一分解定理)
樱花(线性筛+唯一分解定理)题目链接:https://ac.nowcoder.com/acm/problem/50557(https://ac.nowcoder.com/acm/problem/15428)题目来源:牛客网Problem Description求不定方程:1x+1y=1n!\frac{1}{x}+\frac{1}{y}=\frac{1}{n!}x1+y1=n!1的正整数解(x,y)的数目。Input一个整数n。Output一个整数,表示有多少对(x,y)原创 2020-08-30 10:02:29 · 1209 阅读 · 1 评论 -
n的约数 (数论+dfs)
n的约数(唯一分解定理)题目链接:https://ac.nowcoder.com/acm/problem/15428题目来源:牛客网Problem Descriptiont次询问,每次给你一个数n,求在[1,n]内约数个数最多的数的约数个数。Input第一行一个正整数t之后t行,每行一个正整数nOutput输出t行,每行一个整数,表示答案Sample Input513911316Sample Output64166Hint对于100%的原创 2020-08-22 15:03:12 · 2789 阅读 · 0 评论 -
陕西师范大学第九届ACM程序设计竞赛(公开赛)ganmao病毒被消灭(优先队列+BFS)
ganmao病毒被消灭 (优先队列+BFS)题目链接:https://ac.nowcoder.com/acm/contest/7031/B来源:牛客网Problem Descriptionyounik进入校医院大厅,观察到校医院大厅是一个的正方形区域,在这个区域中有多名学生,根据学生的密集程度分为了n*n个小方形区域。此时一个名为ganmao的病毒正处在区域(1,1)位置,ganmao病毒将前往(n,n)位置等待被消灭,每个区域都有一个数值。如果区域值为正数,则此值代表危险值,危险值越高,学生的原创 2020-08-17 22:31:44 · 231 阅读 · 0 评论 -
Comet OJ用户群里看的一道题 (二分+贪心)
Comet OJ用户群里看的一道题 (二分+贪心)尽管没有找到原题的链接,但这丝毫不影响对题目的思考,嘿嘿。下面我们就来看题。PictrueProblem Description给定两个数字n,m,我们要求把m分成n份,后一份必须大于等于前一份的一半问:第一份最大是多少0<=n,m<=100000Input输入包含等多个测试样例,第一行一个数字t,代表有t组测试样例接下来一个两个数字n,m 表示把m分成n份Output一个结果,数据保证一定有解Sample I原创 2020-08-16 11:40:34 · 130 阅读 · 0 评论 -
2020 年百度之星·程序设计大赛 - 复赛 Battle for Wosneth(逆元、期望)
Battle for Wosneth(逆元、期望)题目链接:http://bestcoder.hdu.edu.cn/contests/contest_showproblem.php?cid=892&pid=1001提交链接:http://acm.hdu.edu.cn/showproblem.php?pid=6838Problem Description你在打游戏的时候碰到了如下问题: 有两个人记作Alice和Bob,Bob的生命值为m,Alice的生命值很高,所以可以认为是无限的。两个原创 2020-08-15 10:33:04 · 371 阅读 · 2 评论 -
2020 年百度之星·程序设计大赛 - 初赛二 Distance(组合数学)
Distance题目链接:http://bestcoder.hdu.edu.cn/contests/contest_showproblem.php?cid=890&pid=1002Problem Description小沃沃所在的世界是一个二维平面。他有 n 个朋友,第 i 个朋友距离他的距离为 a[i],小沃沃并不知道这些朋友具体在什么点上。请问在最优情况下,小沃沃的朋友两两之间的欧几里得距离的和的最小值是几?假设小沃沃的位置为 P0P_0P0 = (x0x_0x0,y0y_0y0原创 2020-07-31 12:14:01 · 277 阅读 · 0 评论 -
leetcode 火柴拼正方形
473. 火柴拼正方形题目链接:https://leetcode-cn.com/problems/matchsticks-to-square/题目:还记得童话《卖火柴的小女孩》吗?现在,你知道小女孩有多少根火柴,请找出一种能使用所有火柴拼成一个正方形的方法。不能折断火柴,可以把火柴连接起来,并且每根火柴都要用到。输入为小女孩拥有火柴的数目,每根火柴用其长度表示。输出即为是否能用所有的火柴拼成正方形。示例 1:输入: [1,1,2,2,2]输出: true解释: 能拼成一个边长为2的正方原创 2020-07-29 16:29:41 · 335 阅读 · 0 评论 -
2020 年百度之星·程序设计大赛 - 初赛一 1003
2020 年百度之星·程序设计大赛 - 初赛一 Dec (记忆化搜索 或 动态规划)Problem Description初始有 a, b 两个正整数,每次可以从中选一个大于 1 的数减 1,最后两个都会减到 1,我们想知道在过程中两个数互质的次数最多是多少。Input第一行一个正整数 test ( 1≤test≤1000000 ) 表示数据组数。接下来 test 行,每行两个正整数a , b (1≤a,b≤1000)。Output对于每组数据,一行一个整数表示答案。Sample Inp原创 2020-07-20 13:28:50 · 356 阅读 · 0 评论 -
2020 年百度之星·程序设计大赛 - 初赛一 1002
2020 年百度之星·程序设计大赛 - 初赛一 GPA (动态规划)Problem Description小沃沃一共参加了 4 门考试,每门考试满分 100 分,最低 0 分,分数是整数。给定四门考试的总分,请问在最优情况下,四门课绩点的和最高是多少?分数与绩点之间的对应关系如下:95~100 4.390~94 4.085~89 3.780~84 3.375~79 3.070~74 2.767~69 2.365~66 2.062~64 1.760~61 1.00~59 0I原创 2020-07-20 10:21:48 · 315 阅读 · 0 评论 -
我怎么又WA了 (数学)
18373 我怎么又WA了时间限制:1500MS 代码长度限制:10KB提交次数:79 通过次数:16题型: 编程题 语言: G++;GCC;VCDescription梓梓做题的时候经常会WA,所以他要让你们感受一下他的痛苦。梓梓给了你n个题,第i个题的难度值为a[i],对于两个题s和t,如果a[s] xor a[t]的结果在二进制表示下有奇数个1,那么这两道题就会产生出一个突破点。因为突破点的总数会直接影响到梓梓的发挥,所以梓梓想让你求出一共有多少个突破点。如果你没能成功完成任务,那么梓原创 2020-07-16 14:28:14 · 227 阅读 · 0 评论 -
牛客题目 - 白色相簿(并查集)
牛牛的Fib序列Problem Description链接:https://ac.nowcoder.com/acm/problem/20793来源:牛客网众所周知,一个人或两个人之间的关系是最为稳定的,如果产生三个人以上的关系,则会变得不稳定容易产生诸如“北原春希、冬马和纱、小木曾雪菜”这样的悲剧爱情故事那么,为了避免这样的事情发生,我们需要判断现有的n个人里,是否存在三人及以上的关系例如:A和B之间存在关系,B和C之间存在关系,则ABC之间即构成了一个三人关系,此时是不稳定的Input D原创 2020-07-16 13:27:24 · 398 阅读 · 0 评论 -
牛客编程巅峰赛S1第2场 - 黄金&钻石 牛牛的Fib序列
牛牛的Fib序列Problem Description链接:https://ac.nowcoder.com/acm/contest/6357/A来源:牛客网牛牛重新定义了斐波那契数列,牛牛定义f(n) = f(n-1)+f(n+1); f(1)=a, f(2)=b, 现在给定初始值 a, b,现在求第n项f(n)%1000000007的值。其中 1<=|x|, |y|, n<=10^9Example1输入1,2,3输出1说明f(2)=f(3)+f(1), 所以f(3)原创 2020-07-16 09:11:22 · 179 阅读 · 0 评论 -
2020 年百度之星·程序设计大赛 - 测试赛 度度熊的王国战略 (签到题)
2020 年百度之星·程序设计大赛 - 测试赛 度度熊的王国战略 (签到题)Problem Description度度熊国王率领着喵哈哈族的勇士,准备进攻哗啦啦族。哗啦啦族是一个强悍的民族,里面有充满智慧的谋士,拥有无穷力量的战士。所以这一场战争,将会十分艰难。为了更好的进攻哗啦啦族,度度熊决定首先应该从内部瓦解哗啦啦族。第一步就是应该使得哗啦啦族内部不能同心齐力,需要内部有间隙。哗啦啦族一共有n个将领,他们一共有m个强关系,摧毁每一个强关系都需要一定的代价。现在度度熊命令你需要摧毁一些强关原创 2020-07-15 10:46:16 · 387 阅读 · 0 评论 -
2020 年百度之星·程序设计大赛 - 测试赛 度度熊保护村庄 计算几何(叉积)+floyd(最小环)
2020 年百度之星·程序设计大赛 - 测试赛 度度熊保护村庄 计算几何(叉积)+floyd(最小环)Problem Description哗啦啦村袭击了喵哈哈村!度度熊为了拯救喵哈哈村,带着自己的伙伴去救援喵哈哈村去了!度度熊与伙伴们很快的就过来占据了喵哈哈村的各个军事要地,牢牢的守住了喵哈哈村。但是度度熊发现,这是一场旷日持久的战斗,所以度度熊决定要以逸待劳,保存尽量多的体力,去迎战哗啦啦村的战士。于是度度熊决定派尽量多的人去休息,但是同时也不能松懈对喵哈哈村的保护。换句话而原创 2020-07-14 17:29:05 · 496 阅读 · 0 评论