lim

排版规约

馋奶兔 提交于 2020-08-12 07:23:28
1 一级标题 章标题居中,三号黑体,使用 ## 。 1.1 二级标题 章下为节,节标题四号黑体,使用 ### 。 1.1.1 三级标题 节下为小节,小节标题小四黑体,使用 #### 。 1.1.1.1 四级标题 1.1.1.1.1 五级标题 一般只使用一二三级标题。 2 列表 2.1 无序列表 无序列表在符号 - 后加空格使用: 无序列表 1 无序列表 2 无序列表 3 如果要控制列表的层级,则需要在符号 - 前使用空格: 无序列表 1 无序列表 2 无序列表 2.1 无序列表 2.2 对条文内容采用分行并叙, 或结构有层级关系。 列举结束必须换行 。 2.2 有序列表 有序列表的使用,在数字及符号 . 后加空格后输入内容,如下: 有序列表 1 有序列表 2 有序列表 3 小节以下标题, 或表达同步顺序关系。 如果编号及其后内容新起一个段落,则需要换行,列举结束必须换行 3 引用 引用的格式是在符号 > 后面书写文字。如下: 疫情就是命令,防控就是责任。 ——领袖 用于大段原文引用, 引用结束必须换行 。 4 文本 4.1 粗体和斜体 用粗体标识段落内强调项 , 一般只在英文中使用斜体 , 用粗体加斜体标识注意项 。 如果信息之间关联性越高,它们之间的距离就应该越接近,也越像一个视觉单元;反之,则它们的距离就应该越远,也越像多个视觉单元。亲密性的根本目的是实现组织性

微积分历史发展

风格不统一 提交于 2020-08-12 05:21:20
转自: https://www.zhihu.com/question/336322284/answer/918067537 作者:长尾科技 链接:https://www.zhihu.com/question/336322284/answer/918067537 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 微积分 有多重要相信大家多多少少心里都有点数,搞数学的不会微积分就跟中学生不会“加减乘除”一样,基本上啥都干不了。 牛顿 是物理学界的封神人物,然而 牛顿 还凭借着 微积分 的发明,跟 阿基米德 、 高斯 并称为 世界三大数学家 ,这是何等荣耀?这又从侧面反映出微积分是何等地位? 除了 重要 ,很多人对微积分的另一个印象就是 难 。在许多人眼里,微积分就是高深数学的代名词,就是高智商的代名词,许多家长一听说谁家孩子初中就学了微积分,立马就感叹这是别人家的天才。其实不然,微积分 并不难 ,它的基本思想甚至是非常简单的,不然也不会有那么多初中生学习微积分的事了。 所以,大家在看这篇文章的时候不要有什么心理负担,微积分并不是什么很难的东西,我们连高大上的 麦克斯韦方程组 都看过来了,还怕什么微积分对不对?只要跟着 长尾科技 的思路走,我相信一般的中学生都是可以非常顺畅地理解微积分的。 好,下面进入正题。 01从面积说起 我们从小学就学了各种 求面积

180904 再卖菜 ccf

天涯浪子 提交于 2020-08-11 08:54:05
思路 dfs+去重 关键 满分的关键在于不同的前缀可能会遇到相同的情况,要直接排除这些情况,避免重复计算(单纯dfs只有80分) 实现 这里采用数组f来记录各种情况,通过traceback函数回溯 1 #include<iostream> 2 #include<cstring> 3 4 using namespace std; 5 6 int a[305 ]; 7 int b[305 ]; 8 bool f[305][305][305];//去重 9 //int s=0; 10 int n; 11 void traceback(int i,int b1,int b2){ 12 /*if(s==1){ 13 return; 14 }*/ 15 if(f[i][b1][b2])return ; 16 f[i][b1][b2]=true ; 17 if(i>= n){ 18 if((b1+b2)/2==a[n-1 ]){ 19 for(int j=0;j<n;j++ ){ 20 cout<<b[j]<<' ' ; 21 } 22 exit(0 ); 23 } 24 25 } 26 else { 27 for(int j=0;j<3;j++ ){//考虑除法取整的情况 28 b[i]=a[i-1]*3+j-b2- b1; 29 if(b[i]<=0 ){ 30 continue ; 31

大数据算法——布隆过滤器

混江龙づ霸主 提交于 2020-08-10 19:34:41
本文始发于个人公众号: TechFlow ,原创不易,求个关注 今天的文章和大家一起来学习大数据领域一个经常用到的算法——布隆过滤器。如果看过《数学之美》的同学对它应该并不陌生,它经常用在集合的判断上,在海量数据的场景当中用来快速地判断某个元素在不在一个庞大的集合当中。它的原理不难,但是设计非常巧妙,老实讲在看《数学之美》之前,我也没有听说过这个数据结构,所以这篇文章也是我自己学习的笔记。 原理 在我之前的理解当中,如果想要判断某个元素在不在集合当中,经典的结构应该是平衡树和hash table。但是无论是哪一种方法,都逃不开一点,都需要存储原值。 比如在爬虫场景当中,我们需要记录下之前爬过的网站。我们要将之前的网址全部都存储在容器里,然后在遇到新网站的时候去判断是否已经爬过了。在这个问题当中,我们并不关心之前爬过的网站有哪些,我们只关心现在的网站有没有在之前出现过。也就是说之前出现过什么不重要,现在的有没有出现过才重要。 我们利用平衡树或者是Trie或者是AC自动机等数据结构和算法可以实现高效的查找,但是都离不开存储下所有的字符串。想象一下,一个网址大概上百个字符,大约0.1KB,如果是一亿个网址,就需要10GB了,如果是一百亿一千亿呢?显然这么大的规模就很麻烦了,今天要介绍的布隆过滤器就可以解决这个问题,而且不需要存储下原值,这是一个非常巧妙的做法,让我们一起来看下它的原理。

180904 再卖菜 ccf

陌路散爱 提交于 2020-08-08 19:10:12
思路 dfs+去重 关键 满分的关键在于不同的前缀可能会遇到相同的情况,要直接排除这些情况,避免重复计算(单纯dfs只有80分) 实现 这里采用数组f来记录各种情况,通过traceback函数回溯 1 #include<iostream> 2 #include<cstring> 3 4 using namespace std; 5 6 int a[305 ]; 7 int b[305 ]; 8 bool f[305][305][305];//去重 9 //int s=0; 10 int n; 11 void traceback(int i,int b1,int b2){ 12 /*if(s==1){ 13 return; 14 }*/ 15 if(f[i][b1][b2])return ; 16 f[i][b1][b2]=true ; 17 if(i>= n){ 18 if((b1+b2)/2==a[n-1 ]){ 19 for(int j=0;j<n;j++ ){ 20 cout<<b[j]<<' ' ; 21 } 22 exit(0 ); 23 } 24 25 } 26 else { 27 for(int j=0;j<3;j++ ){//考虑除法取整的情况 28 b[i]=a[i-1]*3+j-b2- b1; 29 if(b[i]<=0 ){ 30 continue ; 31

白话马尔科夫链蒙特卡罗方法(MCMC)

五迷三道 提交于 2020-08-07 21:06:17
前言 你清茶园不是人待的地方! 里面的个个都是人才,说话又好听——就是我太菜了啥也听不懂,这次期中还考的贼**烂,太让人郁闷了。 最近课上讲这个马尔科夫链蒙特卡罗方法,我也学得一塌糊涂。这时我猛然想起了自己的博客园密码(雾),来更个博客吧。 [Warning] 本人数学水平差劲,下文用词不严谨、缺少部分证明,请酌情阅读。若出锅,欢迎指正。 啥是马尔科夫链? 马尔科夫链(Markov Chain),简单来说就是一个用来随机游走的有向图,每条边(u, v)的边权 \(p_{uv}\) 代表“当前在u,下一步走到v”的概率,显然需要 \[p_{uv}\ge 0, \sum_{v}p_{uv}=1. \] 下文中我们假设这个有向图是 强连通的 ,即任取两个点u和v,都存在从u到v的、边权都大于0的路径(当然从v到u的路径也要存在)。 马尔科夫链(也就是这个随机游走过程)的美妙性质在于它 收敛 。怎么个收敛法呢? 设这个图有n个点,令 \(n\) 维行向量 \(\mathbf p(t)\) 表示随机游走了t步之后的概率分布(在时间t分别位于每个点的概率), \(\mathbf p(t)_i\) 就是第t步到点i的概率。初始状态 \(\mathbf p(0)\) 是随便钦定的。 再定义一个量 \(\mathbf a(t)\) ,名叫“长期平均概率分布(long-term average

HDOJ 6756

◇◆丶佛笑我妖孽 提交于 2020-08-04 09:38:15
前天的多校题。朝鲜就是毒瘤,签到题都这么难/kk HDOJ题目页面传送门 给定一个无向图 \(G=(V,E),|V|=n,|E|=m\) ,每个点有点权 \(a_i\) ,设 \(S_i=\{a_j\mid (i,j)\in E\}\) ,支持 \(2\) 种 \(q\) 次操作: \(\texttt1\ x\ y\) :令 \(a_x=y\) ; \(\texttt2\ x\) :求 \(\mathrm{mex}(S_x)\) 。 \(n,m\in\left[1,10^5\right],a_i\in\left[0,10^9\right]\) 。本题多测,最多有 \(10\) 组数据。 \(\mathrm{TL}=3\mathrm s\) 。 以下认为 \(n,m\) 同阶,复杂度里用 \(n\) 表示。 对于无向图上的询问题,一般有一个套路:根号分治(还是听yjz讲课才会的)。考虑设一个界限 \(lim\) ,将度数 \(\leq lim\) 的都设为小点,其他都是大点。不难发现,小点度数上限是 \(\mathrm O(lim)\) ,大点个数上限是 \(\mathrm O\!\left(\dfrac n{lim}\right)\) (因为 \(\sum\limits_{i=1}^n|\delta(i)|=2m\) ),这是两个很好的性质。 于是分成四个需要思考的问题:小点修改

[考试反思]0520省选模拟101:目的

十年热恋 提交于 2020-07-28 19:12:21
没得说。怎么这么菜啊。 $T1$的$60$分白送的基本都不用想。 (诶那我这场考试干啥了? $T2$看着像个$min25$筛的板子。就是数据范围大了点 然而因为几乎没怎么遇到过$min25$的题,只写过一次而且还是三个月前了。 所以基本上是忘的一干二净考场上一点一点尝试想的。 结果写的混天黑地终于写完,过掉样例,就交了。 十分快乐的是:少取了个模。直接爆零。然后这场就没了。 就当是练习不熟练的知识点了(自己都不信。。。 我到现在都不知道我这么做的目的是什么。但愿不要再考场弱智了(事实上明天还是这样 T1:石子游戏 大意:$nim$。问去掉最少几堆石子后可以先手必胜。$n \le 5 \times 10^5,A \le 5 \times 10^5$ 要求出最少用多少个堆能得到和所有石子堆一样的异或值。 删掉的石子堆数是$logA$级别。否则线性基可以表出就可以去掉了。 所以暴力做$dp$是$O(n^2)$的。每一轮用$xorFWT$优化可以做到$O(nlog^2n)$。用$FWT$本质求单点点值可以做到$O(nlogn)$ 1 #include<cstdio> 2 #define S 1<<19 3 int a[S],n,t[S],T,ans; 4 void FWT( int *a){ for ( int i= 1 ;i<S;i<<= 1 ) for ( int j= 0 ;j<S

[考试反思]0520省选模拟101:目的

走远了吗. 提交于 2020-07-28 11:38:15
没得说。怎么这么菜啊。 $T1$的$60$分白送的基本都不用想。 (诶那我这场考试干啥了? $T2$看着像个$min25$筛的板子。就是数据范围大了点 然而因为几乎没怎么遇到过$min25$的题,只写过一次而且还是三个月前了。 所以基本上是忘的一干二净考场上一点一点尝试想的。 结果写的混天黑地终于写完,过掉样例,就交了。 十分快乐的是:少取了个模。直接爆零。然后这场就没了。 就当是练习不熟练的知识点了(自己都不信。。。 我到现在都不知道我这么做的目的是什么。但愿不要再考场弱智了(事实上明天还是这样 T1:石子游戏 大意:$nim$。问去掉最少几堆石子后可以先手必胜。$n \le 5 \times 10^5,A \le 5 \times 10^5$ 要求出最少用多少个堆能得到和所有石子堆一样的异或值。 删掉的石子堆数是$logA$级别。否则线性基可以表出就可以去掉了。 所以暴力做$dp$是$O(n^2)$的。每一轮用$xorFWT$优化可以做到$O(nlog^2n)$。用$FWT$本质求单点点值可以做到$O(nlogn)$ 1 #include<cstdio> 2 #define S 1<<19 3 int a[S],n,t[S],T,ans; 4 void FWT( int *a){ for ( int i= 1 ;i<S;i<<= 1 ) for ( int j= 0 ;j<S

【题解】uva1104 chips challenge

大兔子大兔子 提交于 2020-07-28 09:55:05
原题传送门 题目分析 给定一张n*n的芯片。 '.'表示该格子可以放一个零件。 'C'表示该格子已经放了一个零件(不能拆下)。 '/'表示该格子不能放零件。 要求在芯片的 现有基础 上,放置 尽可能多 的零件,使得: 第i行与第i列零件数相等。 每行每列零件数<=总零件数*A/B。 条件1 考虑如何使得第i行第j列零件数相等。 首先可以想到经典的行列二分图模型,即 \((i,j)\) 如果可放置零件,则连边;如果必须放置零件,则记录其为必选。最后跑最大流即可。 然而这种模型的局限性就在于无法控制行列相等。 我们考虑用逆向思维解决: \((i,j)\) 如果可放置零件,则连边;如果必须放置零件,则不连。而边的意义为点 \((i,j)\) 不放零件 。 这样有什么好处呢? 既然原始边为不放零件,那我们就可以在 \((i,i)\) 之间连接新边,来 收集剩余流量 。 如何理解? 设第i行可放置和必须放置零件总和为 \(a[i]\) ,而已经流出 \(x\) 流量表示不选,第i列同理。则我们可以用新边收集 \((i,i)\) 之间剩余的流量,而这里的流量就表示 选择放置零件 。 样例分析(不考虑条件2): n=2 C. /. 如图,行列间的曲线为表示不选的原始边,直线为表示选择的新边。 同时由于(1,1)为'C',我们记录下它的流量并体现在选择边中,但不建立表示不选的曲线。