自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我们花时间收集,却忘了最重要的其实是花时间去消化

A dream chaser github地址:https://github.com/mangonihao

  • 博客(154)
  • 资源 (1)
  • 收藏
  • 关注

原创 Transformer结合BERT代码的理解

Self-attention部分:Batch Norm针对不同样本的同一通道的特征进行归一化(在NLP中表示,不同句子的同一位置的词的特征),要求样本通道的数量基本相同(在NLP中,也就是同一批样本中,句子长度大致一样)。Layer Norm针对同一样本的不同通道做归一化(在NLP表示,同一个句子的不同词的特征),只针对一个样本。从上面的区别可以看出,Batch Norm针对整个批次的样本,需要反映出整个批次的分布,所以需要批次的数量比较大。Layer Norm只针对一个样本,与批次的大小无关。Ba

2021-05-18 23:00:00 867 2

原创 解决win10 cmd下运行python弹出windows应用商店问题

查看path发现“有%USERPROFILE%\AppData\Local\Microsoft\WindowsApps“,删除之后,问题可能还没解决。我的最终解决办法是:win10菜单搜索【管理应用执行别名】关闭下面两个按钮【应用安装程序】,直接解决。...

2021-05-16 15:55:43 291 1

原创 《Distributed Representations of Words and Phrases and their Compositionality》论文阅读笔记

1.论文的贡献对现有的Skip-gram model进行拓展,提高词向量的质量和学学习速度。作者提出了创新方法:通过对常用词的部分采样加快训练速度以及提高词向量的训练质量。提出了negative sampling作为hierarchical softmax的替代方法。2.前人的主要贡献Mikolov 提出了Skip-gram model,这个模型能够快速地学习得到高质量的词向量,因为相较于传统使用神经网络学习词向量的模型,Skip-gram不涉及稠密矩阵的相乘。并且学习得到的词向量能够通过

2020-11-10 11:15:39 285

原创 如何修改Anaconda下的jupyter notebook的默认工作路径

首先,在桌面上创建一个jupyter notebook的快捷方式,然后右键选择属性,然后将目标里面的"%USERPROFILE%“改成“你的绝对路径”,如"E:\py”,注意双引号是英文符号,我就是因为是中文符号没发现,然后就闪退,以为这样做是不行的,还有就是要点击这个快捷方式,才能触发目标。其他什么都不用修改,点击这个快捷方式就可以切换工作路径了。坑点:1,引号是英文的双引号;2,点击这个快捷方式,不要点击其他快捷方式。...

2020-08-24 17:25:31 151

原创 WSL Ubuntu18.04折腾记录-跑通ubuntu多线程c程序

1,以管理员身份打开powershell.执行如下命令,执行完如下命令后,需要重启操作系统。Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux2.去微软应用商店下载需要的Linux发行版。3.下载完成后直接双击安装即可。(4.安装完成后,在开始菜单中即可找到自己安装的Lin...

2020-01-15 21:32:06 1327

原创 关于莫队算法的一些看法(自己)

首先莫队算法刚开始学的时候花了不少时间,现在回过头来看还是很简单。特点:[已知l,r]区间的答案,可以在O(1)或者O(logn)(莫队套树状数组或者线段树)得到l,r+1的答案。自己的话来说就是区间只发生很小的变化,那么我们推导出递推公式,只要加上一个增量就得到新区间的答案。还有就是离线的特点,莫队算法就是要将要查询的区间排序,然后使用两个指针,去移动目标区间。因为排好序以及分块的原因,所...

2019-10-05 17:14:36 142

原创 2019中秋节上海网络赛-J-Stone game(背包)

题面:思路:枚举集合s’的最小值,确定出剩下s’集合的和的范围。∵S′+S+min=Sum\because S&#x27; + S + min = Sum∵S′+S+min=Sum∵S′−min&lt;=S\because S&#x27; - min &lt;= S∵S′−min<=S∵S′+min&gt;=S\because S&amp...

2019-09-15 22:28:34 171

原创 sublime text3配置C++环境-亲测有效(自己)

一个比较好的教程:https://blog.youkuaiyun.com/a19990412/article/details/82658981但是还是有点小问题,所以我在他的基础上改了,然后AC。首先就是Tools->Build system->New build system.然后就会打开一个文件,将下面代码赋值进去,即可。{ // "cmd": ["g++", "${file...

2019-08-24 17:11:16 463

原创 主席树+二分-2019暑假牛客第9场-H-Cutting Bamboos

题面:思路:使用主席树快速查询区间内大于某个数的个数与总和。然后二分答案。#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)#define rep(i,a,b) for(int i = (a);i >= (b);--i)using namespace std;ty...

2019-08-20 23:33:12 122

原创 求线段交点个数-线段树-欧拉定理-2019暑假杭电多校1002-Rikka with Cake

题目传送门题解:线段树+离散化+欧拉定理线段树记得使用lazy标记,否则会TLE。#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)#define rep(i,a,b) for(int i = (a);i >= (b);--i)#define INF 1e18usi...

2019-08-20 16:30:43 232

原创 2019暑假牛客第10场-D,Han Xin and His Troops-拓展欧几里得-线性同余方程组

题目传送门题面:思路:拓展欧几里得解线性同余方程组模板题。只是要注意会爆long long,所以全部改为__int128输入输出。#include<bits/stdc++.h>using namespace std;#define per(i,a,b) for(int i=(a);i<=(b);i++)#define rep(i,a,b) for(int ...

2019-08-18 14:51:13 220

原创 2019暑假牛客第10场-B-Coffee Chicken-递归搜索-签到题

题面:思路:对于每一个字母都递归搜索,因为只有10个字母所以没关系。我想太复杂了,就是一次将10个字母全部找出来。简单递归·代码:#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)#define rep(i,a,b) for(int i = (a);i >= (b)...

2019-08-18 13:38:55 184

原创 E-All men are brothers-并查集-2019暑假牛客第9场

题面:题解:注意:直接计算组合数,会爆long long。先预处理,算出组合数(迭代)。#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)#define rep(i,a,b) for(int i = (a);i >= (b);--i)#define INF 1e1...

2019-08-16 15:09:07 189 1

原创 D-Knapsack Cryptosystem-折半搜索-2019暑假牛客签到题

题面:思路:236,直接搜索肯定会爆,所以要拆成两半搜索,218.#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)#define rep(i,a,b) for(int i = (a);i >= (b);--i)#define INF 1e18using names...

2019-08-16 14:33:50 210

原创 219暑假杭电第8场-11题-Roundgod and Milk Tea-贪心-思维

题目传送门思路:思路:初始时,每个班级可供选择的数量是sum-a[i].p,但是由于之前的班级会用掉一些牛奶,那么选择的范围会缩小,记录到目前为止用掉的牛娜数量used,贪心:让这些用掉的牛奶尽可能是a[i].p,当前班级不能选的本班牛奶数,这样可以使本班选择的数量最大。另外,根本不需要排序(之前一直以为要排序,选择要有方向),其实如果1式是第二种sum-used的情况,那么used ++...

2019-08-14 22:34:38 204

原创 2019暑假牛客第8场-A-All-one Matrices-单调栈+前缀和

题面:思路:因为左右上边界已经确定了,所以只要判断下边界能否拓展即可(如果不可以拓展就说明这是一个极大矩形,++ans).比赛的时候想跑完然后再判断那些是极大矩形,然后各种判断,最后不出所料的写崩了。边跑便判断,还有就是跑完,然后再判断。掌握局部信息就判断(这样可以避免无关信息的干扰),掌握全局信息之后再判断,就容易受各种信息的干扰,也就是随着时间的运行,无用信息将有用信息覆盖了。...

2019-08-11 10:46:28 192

原创 2019暑假牛客第7场A-string-最小表示法+暴力

题面:思路:最小表示法,每次贪心选择最长的串判断它是否满足条件。哦调了一下午,结果是板子的问题。之前的板子是只有最小表示法,这个可以求两种,一种封装,到时候直接调用即可。#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)#define rep(i,a,b) for(int ...

2019-08-10 00:03:27 171

原创 2019暑假杭电多校第6场签到题-1008-TDL

题目传送门思路:估计出n的范围,暴力就完事。异或就是不进位的加法(f(n,m) - n)^n == k, f(n,m)-n==k^n;因为灯饰右边估计不会超过1e3,所以k^n<=1e3,n和k相差不大,因为如果k的二进制最高位有20位,但是n的二进制最高位只有10位,那么k的最高位异或之后肯定还是1,所以会超过1e3.所以n和k相差不会超过1e3.可以把异或理解为绝对值...

2019-08-07 21:24:31 272

原创 ACM对拍程序

以2019杭电多校的一道题为例。题目传送门将正确程序还有WA的程序放在同一目录下(这两个程序按照一般写法即可),然后再写个样例随机生成代码。然后代码都要编译一下,生成对应的exe文件,因为对拍程序调用的是exe文件,所以源代码改了,还要重新编译一下,更新exe文件。然后新建txt,写入一下代码。然后将文件后缀改为.bat,一切就绪后就可以双击.bat文件,windows会调用cmd窗口,显示运...

2019-08-06 20:34:32 214

原创 利用Dijikstra最短路特定写法求次短路,DP

第一题:2019暑假牛客第4场J-free:AC代码:#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)#define rep(i,a,b) for(int i = (a);i >= (b);--i)using namespace std;#define INF 1e...

2019-08-04 16:48:10 199

原创 2019暑假牛客第5场-F.maximum clique 1-最大独立集(输出方案)

题面:思路:建图方法若两个数有且仅有一个位不同,那么连边(从左边指向右边)。根据某个数的二进制表达式中有奇数个1还是偶数个1,分成左边和右边。对于二分图,跑匈牙利求最大匹配,最大独立集=节点数-最大匹配。对于连通图,最大匹配+最小边覆盖 = N(节点的数量)最大独立集+最小顶点覆盖=N对于二分图,最小顶点覆盖=最大匹配所以,最大独立集+最大匹配 = N;最大独立集方案的输出,...

2019-08-03 11:44:24 359

原创 2019杭电多校-1006-Fansblog(威尔逊定理+大整数判断素数)

题面:威尔逊定理传送门AC code:#include <iostream> #include <cstdio> #include <algorithm> #include <cmath> #include <cstring> #include <map> using namespace std;t...

2019-07-30 10:44:37 197

原创 2019暑假牛客第4场-C,sequence-线段树+单调栈

题面:这道题一直段错误,看了我一上午都没看出来,每班只有和别人AC的代码(和我的思路差不多的人去对比代码),结果发现线段树板子有问题,我也是醉了。思路:我用的是线段树+树状数组,代码的具体解释看代码注释。世界上最美好的快感莫过于,久WA之后AC的快感了。AC code:#include<bits/stdc++.h>#define per(i,a,b) for(int...

2019-07-29 21:33:21 463

原创 2019暑假牛客第3场-F - Planting Trees-单调队列

题面:题目传送门题解:#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)#define rep(i,a,b) for(int i = (a);i >= (b);--i)#define INF 1e6using namespace std;const int ma...

2019-07-27 10:00:44 151

原创 CF教育场69-D(好题)-Yet Another Subarray Problem-动态规划-

题目传送门题解:考虑dp的做法,dp[i][j]代表以第i个数为右端点,长度求余m的值为j时的最大值。转移方程:dp[i][j]=dp[i-1][j-1]+aidp[i][j]=max(dp[i-1][m-1]+a[i]-k,a[i]-k)(j==0)AC code:#include<bits/stdc++.h>#define per(i,a,b) for(int i = ...

2019-07-23 21:03:10 754 8

原创 2019暑假杭电多校第一场-Vacation-思维题

思路:详见https://www.cnblogs.com/Dillonh/p/11229894.html思维题(我的题解):1,如果0号车没有受到其他车的影响(全速前进),那么t=s[0]/v[0]2,如果0号车受到1号车的制约(此时1号车可以全速前进),那么经过分类讨论(只有v[0] > v[1],且在终点前追到1号车)t=(s[1]+l[1])/v[1];3,如果0号车受到2号...

2019-07-23 15:31:48 388

原创 2019暑假牛客第二场-H-Second Large Rectangle-单调栈(详解)

题面:思路:每一行跑一遍单调栈。为什么会想到单调栈?因为在计算矩形的时候,高是由短板决定的(短板效应)。维护一个单调递增的单调栈。每个点出栈时,才真正计算有该点的高决定的最大矩形。每个点在入栈时记录它入栈时弹出的元素,再加上它本身,这记录的是该点向左延伸的最大宽度,但是后面延伸的最大长度,要等到遍历了后面的元素才能知道,所以还要记录一个向后面延伸的最大长度,由后面(高到低)叠加,...

2019-07-21 17:17:41 168

原创 2019暑假牛客第二场-F-Partition problem-暴力DFS

题面:思路:暴力搜索选在A队的队员(假设分为A,B两队)。在暴力选择队员的时候,无法确定后面的选择,所以无法确定那个值要添加,多阶段决策,想到DP,但是大可不必正难则反,将已知在一队的队员的竞争值从该名队员(dfs正在选择的队员)的竞争总和减去,且是减去2倍,因为在前面选择队员时,没有考虑到这个队员,所以竞争值要减两次,这个减去两倍的操作,也解决了后面对前面选择的影响。AC c...

2019-07-21 16:58:25 172

原创 简单DP-CF-C. Basketball Exercise

题目传送门我被坑了,再次纪念一下这道题。AC code:#include<bits/stdc++.h>// #include<iostream>// #include<cstdio>// #include<vector>// #include<cstring>using namespace std;#define per...

2019-07-19 21:34:46 217

原创 2019暑假牛客第一场-E.ABBA-动态规划

思路(转载):AC code:#include<bits/stdc++.h>// #include<iostream>// #include<cstdio>// #include<vector>// #include<cstring>using namespace std;#define per(i,a,b) for...

2019-07-19 13:23:22 323

原创 2019牛客第一场-B题Integration-高数

AC 代码:题解且听大佬详解:https://www.cnblogs.com/Dillonh/p/11209476.html?tdsourcetag=s_pcqq_aiomsg(转载)#include<bits/stdc++.h>// #include<iostream>// #include<cstdio>// #include<vecto...

2019-07-19 10:01:38 300

原创 2019-暑假牛客第一场A题Equivalent Prefixes-单调栈

思路:单调栈AC代码:#include<bits/stdc++.h>#define per(i,a,b) for(int i = (a);i <= (b);++i)using namespace std;const int maxn = 1e5 + 10;typedef long long LL;int a[maxn],b[maxn];int n = 0;...

2019-07-18 20:09:44 274

原创 CF-div3-565-C. Lose it!(代码短小精悍,简化代码)

题目传送门简单题,自己的离线写法,思维直白,写起来过长,还容易出错。在线简洁代码:#include<bits/stdc++.h>using namespace std;const int maxn = 5e5 + 10;#define per(i,a,b) for(int i = (a);i <= (b);++i)int b[7] = {0,4,8,15,16,23...

2019-06-10 23:04:43 525

原创 CF-思维题-div2-564-C. Nauuo and Cards

题目传送门Official Tutorial:First, try to finish it without playing any empty cards.If that’s not possible, the best choice is to play several empty cards in a row, then play from 1 to n. For a card i, ...

2019-06-08 11:26:36 666

原创 CF66-DIV2-D. Array Splitting-思维题

题目传送门思维题。思维方法:本题的思维启示:首先,他是连续区间,意味着区间每个数的位置不能改变。所以首先想到贪心从开始选取,但是如果从1-n开始贪心,贪心前面的不知道会对后面造成什么影响,还有k这个约束。之前的思维是既然无法对每个数直接通过改变他们顺序贪心,那么久从1-n开始贪心,一步一步划分,将划分出来的新部分*他的权重。 总的来说就是,先确定分法,然后再计算权重。这是比较直观的...

2019-06-06 15:48:47 452

原创 CF-B. Catch Overflow!

题目传送门简单题:惨痛教训。#include<iostream>#include<cstdio>#include<algorithm>#include<vector>#include<set>#include<stack>#include<queue>#include<map>#in...

2019-06-06 11:05:35 348

原创 sublime text3使用的注意事项

1,sublime 编译运行c++首先,cpp文件的路径不能有中文,还有空格(空格可以改成下划线)。sublime配置c++编译运行的教程:https://blog.youkuaiyun.com/a19990412/article/details/82658981编译运行的快捷键:ctrl + shift + b(选择多种编译模式,只编译,只运行等)还可以直接选择ctrl + b直接编译运行。To...

2019-05-29 15:56:44 986

原创 第一个交互题

题目传送门我的第一个交互题。#include <bits/stdc++.h>#define per(i,a,b) for (int i = (a); i <= (b); ++i)#define rep(i,a,b) for (int i = (a); i >= (b); --i)using namespace std;const int maxn = 2e5;...

2019-05-29 10:30:05 221

原创 Comet OJ - Contest #3子序列子序列子序列...

Comet OJ - Contest #3子序列子序列子序列…不是我的代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;const int max_n=5005;const int mod=1e9+7;int dp[2][14][max_n];int nf;int n,m,a[max_...

2019-05-11 11:01:33 263

原创 2019南昌网络邀请赛-I-Max Answer-线段树(RMQ)+ 单调栈

思路:先用单调栈算出每个a[i]可以作为区间最小值的区间的最左边和最右边。如果a[i] > 0的话,直接整个区间的值都要,因为最小值为正数的区间的数全>0;如果a[i] < 0 的话,可以从点前位置,可以向左向右暴力搜索最小值。(数据有点水,所以可以过)。更好的做法是用线段树求维护每个点左边和,右边和的最大值。但是线段树是用来求解 解可以进行区间合并的,最常见的就是区...

2019-05-04 17:54:14 421

虚拟机Virtual box的Linux环境配置教程

很好的教程-配置虚拟机virtual box的Linux环境,你值得拥有。自己找的话,很麻烦,教程太多,太杂,这个是本人试验过的,很可以的,方便快捷,适合小白

2018-10-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除