常用知识
勇敢铁铁
这个作者很懒,什么都没留下…
展开
-
Mac 让程序坞更丝滑
Mac让程序坞更丝滑的方法。原创 2023-01-29 15:04:38 · 1104 阅读 · 0 评论 -
Linux不用root权限安装nvcc
实际上,使用anaconda时用的cuda是在自己的虚拟环境里的,nvcc这种东西也可以用conda装。可是服务器里没有这个文件,而且安装nvcc也要root权限,这在公用服务器上是不可行的。全网的教程都是说要改path,定位到/usr/local/cuda。在服务器上发现输入nvcc-V提示nvcc未找到命令。...原创 2022-07-28 17:02:23 · 3427 阅读 · 1 评论 -
pytorch中BatchNorm1d、BatchNorm2d、BatchNorm3d
1.nn.BatchNorm1d(num_features) 1.对小批量(mini-batch)的2d或3d输入进行批标准化(Batch Normalization)操作 2.num_features: 来自期望输入的特征数,该期望输入的大小为'batch_size x num_features [x width]' 意思即输入大小的形状可以是'batch_size x num_features' 和 'b转载 2021-03-03 22:41:05 · 7509 阅读 · 4 评论 -
在服务器上进行深度学习的入门教程
1.远程登录Windows用户推荐使用Xshell主机那里填上服务器IP,下面填一下端口号,然后点击连接,之后会让你输入用户名密码,输入之后就可以进入啦2.GPU状态进入之后可能大家最想关注的就是GPU占用情况,可以使用一下两种命令来查看一下~watch -n 1 nvidia-smi或者watch --color --n 1 gpustat --color其中,--n是代表刷新时间,1就是每秒刷新一次;--color是加颜色好看一点QwQ,去掉也可以.原创 2020-12-14 17:01:40 · 13123 阅读 · 1 评论 -
从头到尾彻底理解KMP算法
从头到尾彻底理解KMP 作者:July时间:最初写于2011年12月,2014年7月21日晚10点 全部删除重写成此文,随后的半个多月不断反复改进。1. 引言 本KMP原文最初写于2年多前的2011年12月,因当时初次接触KMP,思路混乱导致写也写得混乱。所以一直想找机会重新写下KMP,但苦于一直以来对KMP的理解始终不够,故才迟迟...转载 2018-04-05 16:49:14 · 1349 阅读 · 0 评论 -
c++ stringstream分割字符串
我们都知道stringstream可以方便的进行数据类型转换,其实还有一个妙用就是按空格分割字符串。#include<iostream>#include<cstring>#include<cstdio>#include<string>#include<algorithm>#include<cmath>#includ...原创 2018-04-24 19:42:54 · 5026 阅读 · 3 评论 -
计算某天是星期几-泽勒算法
公式是:h = (q + 26(m+1)/10 + k + k/4 + j/4 + 5 j)%7其中:h是一个星期中的某一天(0为星期六, 1为星期天, 2为星期一, 3为星期二, 4为星期三, 5为星期四, 6为星期五)。q是某月的第几天。m是月份, 特别地, 一月和二月分别记为上一年的13月和14月。j是世纪数(即 year/100)。k是该世纪的第几年(即year%100)。注意, 公式中的...原创 2018-05-25 20:31:53 · 2720 阅读 · 0 评论 -
O( nlogn )预处理, O( 1 ) 求组合数模板
typedef long long LL;const int maxn = 5e5;const long long mod = 1e9 + 7;LL A[maxn];LL B[maxn];void Init(){ A[0] = 1; for(int i=1; i<=maxn; i++){ A[i] = (A[i-1] * i ) % mod; ...原创 2018-08-15 21:24:12 · 1018 阅读 · 1 评论 -
计算几何模板(有待更新)
struct Point{ double x, y; Point(double x = 0, double y = 0) : x(x), y(y) {};};typedef Point Vector;Vector operator + (Vector A, Vector B) { return Vector(A.x+B.x, A.y+B.y); }Vector ope...原创 2018-08-19 20:20:38 · 155 阅读 · 0 评论 -
理解最长上升子序列 ( LIS ) 的O(nlogn)算法看我就够啦~
网上对于这个算法的讲解排名靠前的都是一派胡言, 自己没理解就写博客,于是我决定写一篇通俗易懂的讲解。我们知道LIS的状态转移方程是dp[ i ] = ( 0 <= j < i , a[ j ] < a[ i ])max{ dp[ j ] + 1}边界条件为dp[ 0 ] = 0;我们维护一个数组d[ ] ,其中d[ i ] 表示长度为 i的LIS的最小结尾值。...原创 2019-03-02 19:37:46 · 459 阅读 · 1 评论 -
背包九讲(转载) 动态规划DP
背包九讲 目录 P01: 01背包问题P02: 完全背包问题P03: 多重背包问题P04: 混合三种背包问题P05: 二维费用的背包问题P07: 有依赖的背包问题P08: 泛化物品P09: 背包问题问法的变化附:USACO中的背包问题 前言本篇文章是我(dd_engi)正在进行中的一个雄心勃勃的写作计划的一部分,这个计划的内容是写作一份...转载 2018-03-09 13:05:45 · 162 阅读 · 0 评论 -
Eratosthenes筛法(素数筛)
最一般的素数筛思想很简单,对于不超过maxx的每个非负整数p,删除2p,3p,4p,……,然后剩下的就是素数,复杂度O(nlogn),因为对内层循环n/2+n/3+......+n/n 小于 1+1/2+1/3+...+1/n=ln(n+1)+γ,其中γ为欧拉常数≈0.577218应当注意,1不是素数哦~这样已经不慢,但由于所有非素数都能由素数与素数的乘积表示,又可以优化如下int maxx=...原创 2018-03-09 22:25:00 · 575 阅读 · 0 评论 -
大整数加法
#include<iostream>#include<cstring>#include<cstdio>#include<string>#include<vector>#include<cstdlib>#include<algorithm>using namespace std;char a[201]原创 2018-03-16 23:47:53 · 143 阅读 · 0 评论 -
高精度计算2的n次幂
#include<iostream>#include<cstring>#include<cstdio>#include<string>#include<vector>#include<cstdlib>#include<algorithm>using namespace std;char a[1005原创 2018-03-17 22:20:50 · 2863 阅读 · 0 评论 -
并查集
并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点,让你判断它们是否连...转载 2018-03-18 08:54:50 · 114 阅读 · 0 评论 -
c++ substr的用法和例题
string substr (size_t pos = 0, size_t len = npos) const;这个函数的作用是取字符串string中位置为pos开始的len个字符,返回一个字符串。如果pos开始后len个字符长度超出了字符串的长度,则取到最后一个字符。下面给出示范:#include <iostream>#include <string>...原创 2018-03-24 10:20:48 · 1395 阅读 · 0 评论 -
POJ 2299 树状数组求逆序数
Ultra-QuickSortTime Limit: 7000MS Memory Limit: 65536K Total Submissions: 67410 Accepted: 25241 DescriptionIn this problem, you have to analyze a particular sorting algorith...原创 2018-04-10 19:44:11 · 180 阅读 · 0 评论 -
组合数递推
有些初学者可能不知道比较大的组合数怎么求,因为如果用组合数的定义公式来求很快就溢出了。为了求出更大的组合数可以利用组合数的递推公式C(n,m)=C(n-1,m-1)+C(n-1,m)下面给出代码:#include<iostream>using namespace std;long long C[100][100];int main(){ for(int i=1;i<...原创 2018-03-09 12:54:55 · 4811 阅读 · 0 评论