- 博客(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' + S + min = Sum∵S′+S+min=Sum∵S′−min<=S\because S' - min <= S∵S′−min<=S∵S′+min>=S\because S&...
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环境配置教程
2018-10-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人