- 博客(43)
- 收藏
- 关注
原创 三连击(枚举排列)
问题将 1,2,…,9 共 9 个数分成三组,分别组成三个三位数,且使这三个三位数的比例是a : b : c,试求出所有满足条件的三个三位数,若无解,输出 No!!!。输入描述:三个数,a, b, c。输出描述:若干行,每行 3 个数字。按照每行第一个数字升序排列。示例 1:输入:1 2 3输出:192 384 576219 438 657273 546 819327 654 981思路本解法采用枚9个数排列的举每一种情况, 使用 c++中的 next_permutation
2022-04-17 16:53:52
652
原创 取宝石问题
题目取宝石问题假设在一个大房间有n个宝石,每一处宝石用一个坐标(x, y)表示。如果你从任意一处宝石的地方出发,依次经过每个放宝石的地方并取走宝石,最终要求回到出发地点,问最短需要走的距离是多少。本题允许走直线。思路采用枚举法,在这个情境里,经过不同地点的顺序会改变最终的行走距离。所以,我们要枚举的就是经过1~n一共n个位置的顺序。枚举n个位置的顺序其实是一个排列问题, 那么可以直接用 C++ 中的 next_permutation 函数来快速获得下一个排列,获得下一个排列的时间复杂度为 O(n
2022-04-17 11:40:33
936
原创 珠心算测验
题目[NOIP2014普及组] 珠心算测验珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和?最近老师出了一些测验题,请你帮忙求出答案。输入描述:共两行,第一行包含一个整数𝑛,表示测试题中给出的正整数个数。第二行有𝑛个正整数
2022-04-17 10:23:19
528
转载 比特枚举子集
题目描述枚举n个数字组成集合的所有子集,输出子集和。下面给出的暴力解法虽然时间复杂度极高,但是写法极其优雅。暴力枚举假设有n个数,遍历0 ~ 2^n - 1 ,遍历到第i个数时,用第i个数的n个二进制位表示取不取数组中的第i个元素。// 输入int a[] = {2, 1, 3, 6, 5};int n = 5;// 计算int tot = 1 << 5; // 相当于求2的5次方for (int i = 0; i < tot; ++i) { // 变量i的
2022-04-16 21:04:37
141
原创 大整数乘法
思路解决大整数乘法,需要理解一个核心概念: 被乘数的第i位 乘以 乘数的第j位, 将贡献到答案的第i+j 位 。如下图 :2 . 容易得到,若乘数有m位,被乘数有n位,那么两数的乘积最多有 m + n 位。因此,可以把乘积的位数预设为两乘数的位数和。细节1.因为同一个答案位k可能对应着多种情况的 i + j, 即,一个答案位可能加上多个乘积,所以答案位的赋值应该用 += 而不能用 =。2.同样的道理,因为同一个答案位可能加上多个乘积,那么可以把进位操作放在累加循环之后做,这样可以减少操作次数
2022-04-16 19:39:28
416
原创 简化版大整数减法
前言在大整数减法中,被减数和减数的符号可以为正负两种情况,被减数和减数谁大谁小也未可知,所以若要完整的考虑大整数减法,情况是很复杂的。本文考虑仅仅考虑大整数减法的一种特殊情况,规定减数和被减数都为正数,且被减数大于减数。思路1 . 实现大整数减法,同样也要实现大整数的输入和输出,这里对输入进行了简化,存储仍然采用小端存储。2 . 因为只考虑 被减数大于减数的情况,因此可以直接进行相减。若相减的结果小于0,从前位借1,本位加10。3 . 减完以后,需要确定结果的长度。 可以先预设长度等于被减数,
2022-04-16 16:56:25
406
原创 大整数加法
概述在C/C++中,long long 的长度一般为 64bit 整形, 大概能处理绝对值小于 8 * 10^18 的加法。若加法的结果或操作数的绝对值大于这个范围,那么系统就不能处理了。此时需要用到大整数的技巧,用两个数组来存储操作数,一个数组来存储结果,模拟竖式加法来完成大整数的加法。需要实现的操作要实现一个大整数加法,需要实现的操作不仅仅是加法操作,还要实现大整数的存储和输入输出,这样才算完整。不要觉得输入输出简单,这里面也蕴含着一些技巧需要掌握。存储方式大小端序 :大端序:数字的高
2022-04-16 12:24:39
1392
原创 生成扫雷矩阵
题目扫雷是Windows自带的游戏。游戏的目标是尽快找到雷区中的所有地雷,而不许踩到地雷。如果方块上的是地雷,将输掉游戏。如果方块上出现数字,则表示在其周围的八个方块中共有多少颗地雷。你的任务是在已知地雷出现位置的情况下,得到各个方块中的数据。输入描述:输入有多组数据,每组数据的第一行有两个数字,m, n (0 < m, n< 100)表示游戏中雷区的范围为m×n。接下来m行每行有n个字符。*表示有地雷,.表示无地雷。最后一组数据m = 0, n = 0表示输入结束,不需要处理。输出
2022-04-15 21:50:36
1914
原创 解析xml——五分钟上手xml.etree.ElementTree
本文快速帮你建立xml.etree.ElementTree的基本概念,并介绍几种简单用法。看完这篇博文,再去学习xml.etree.ElementTree的其它方法就很容易了。
2020-12-30 21:26:04
1402
1
原创 matplotlib——绘图样式
本文介绍如何一次性修改绘图的风格,而不用每绘制一张图都单独设置。随后介绍了绘图库中各种颜色的表达方式。此外,还大致的介绍了一些颜色的知识,最后引出了colormap的概念
2020-12-24 23:31:02
956
原创 SSD的损失函数设计
这篇博客介绍SSD的损失函数设计。想要理解损失函数,需要从锚框与Ground truth box 的匹配策略讲起,此外,本文还阐述了SSD中描述的难负例挖掘(hard negative mining)。
2020-12-22 22:46:26
5123
原创 目标检测基本概念
本篇博客的目的时介绍一些目标检测的入门知识,它们包括:何为目标检测,目标检测的简要发展史,目标检测的主流方法以及目标检测任务的评价(IOU)。
2020-12-21 23:35:43
2001
原创 锚框(anchor box)/先验框(prior bounding box)概念介绍及其生成
一.锚框(anchor box)/先验框(prior bounding box)在众多经典的目标检测模型中,均有先验框的说法,有的paper(如Faster RCNN)中称之为anchor(锚点),有的paper(如SSD)称之为prior bounding box(先验框),实际上是一个概念,特此说明。1.锚框的作用对于目标检测任务,有这样一种经典解决方案:遍历输入图像上所有可能的像素框,然后选出正确的目标框,并对位置和大小进行调整就可以完成目标检测任务。这些进行预测的像素框就叫目标框。这些目标框通
2020-12-19 23:32:43
43894
9
原创 Matplotlib——各级artist容器详解(Figure,Axes,Axis,Trick)
matplotlib里面有很多容易混淆的概念例如axes和axis,也有很多相似的方法,例如plt.plot()和ax.plot(x,y)。本文将彻底理清这些概念。
2020-12-18 23:56:30
1086
2
原创 靠谱 conda 命令
有各种minconda\conda的命令博客,但是你真的无法确定那个靠谱,这个痛苦,我真的受够了。所以,相信我,不会有错的
2020-12-13 20:39:55
106
原创 pycharm 导航中的简易快捷键
alt + Enter 猜测意图Ctrl + Shift + A 查找一些功能/选项/设置,如 显示行号 设置Ctrl + W\ Ctrl + Shift + W 扩选\缩选Ctrl + / 把选中行设为评论Ctrl + D 复制选中行Ctrl + Shift + ↑\uparrow↑ \ ↓\downarrow↓ 向上\向下移动选中行(当光标在方法头中时,会移动整个方法)Ctrl + -+ 收起\展开当前代码块Ctrl +Shift + -+ 收起\展开全部代码块Ctrl
2020-12-12 19:40:40
304
原创 详解BP算法之链式求导法则
BP算法的文章很多,但是详解BP算法中的链式求导法则应该只此一家了。包括Hinton关于BP网络的原始论文,对链式求导法则也只是一带而过。文章先从简化版本的链式法则讲起,再将其应用到BP算法中。简化版本的链式法则两层嵌套(复合)函数如上图所示,E是A1,A2,A3的函数,A1,A2,A3都是B1函数。此时,简单的运用链式求导法则即可求得E关于B1的偏导:dEdB1=dEdA1∗dA1dB1+dEdA2∗dA2dB1+dEdA3∗dA3dB1\frac{dE}{dB_1}=\frac{dE}{dA
2020-12-11 22:57:01
4226
原创 原始论文拾遗之BP算法
首先献上BP算法的论文名《Learning representations by back-propagating errors》需要的同学可以谷歌自取啦~首先声明,这篇文章不讲BP算法或者MLP的机理,仅记录总结一些Hinton在论文中提到的重要技巧,这些技巧在视频或者其它博客是不容易看到的。记录在此,一是为了自己归纳总结,二是基于开源精神,希望能帮大家在自学的路上少一些苦难。正文:...
2020-12-10 15:20:11
1366
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人