自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

GoldMoon

记录成长点滴

  • 博客(86)
  • 收藏
  • 关注

转载 vim入门基础

转载自:http://www.jianshu.com/p/bcbe916f97e1  作者:甲鱼Vim入门基础字数7237 阅读8951 评论7 喜欢103图片来自: http://www.cnblogs.com/zhangsf/archive/2013/06/13/3134409.html公司新员工学习有用到,Vim官网的手册又太大而全,而网上各方

2015-09-18 20:10:23 598

原创 备赛备忘录

1:xor线性基,求异或结果k大值  HDOJ3949   TUJ4129

2015-07-20 23:47:55 419

原创 Ubuntu 16.04下安装VMware 14

因为需要用到一些win下才有的EDA软件,所以准备在Ubuntu下安装一个VM虚拟机。总结下步骤:1、下载安装包,使用wget速度还可以。Ubuntu16.04推荐装新一些的版本,比如14,查到一些博客说装vm12会有一些问题。以下的版本号可以自己搜一搜,换成更新一些的。wget https://download3.vmware.com/software/wkst/file/VMware-Work...

2018-04-09 00:58:01 5007

原创 Linux下串口权限设置

最近在Linux使用串口设备,发现无法通过串口给nodeMCU下载程序,权限不足的问题。假设串口设备是 /dev/ttyUSB0,那么可以在终端下输入sudo chmod 666 /dev/ttyUSB0但是每次重新插入USB to TTL设备都要重新更改权限,很不方便,于是找到了插入后自动设置权限的方法:sudo gedit /etc/udev/rules.d/70-ttyusb.rul

2018-01-09 20:42:24 2813

原创 Ubuntu下不能挂在NTFS分区解决方案

sudo ntfsfix /dev/sda5问题如下:Error mounting /dev/sda5 at /media/goldmoon/Files: Command-line `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000" "/dev/sda5" "/media/goldmoon/File

2017-08-13 11:01:59 532

转载 Ubuntu扁平化主题

直接丢个链接:http://www.linuxidc.com/Linux/2016-09/135165.htm

2017-08-09 15:17:03 628

原创 Ubuntu16.04下安装Visual Studio Code

sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-makesudo apt-get updatesudo apt-get install ubuntu-makeumake web visual-studio-code需要首先安装Ubuntu Make安装中会询问路径,不需修改的话直接回车即可。注意,只能安装在64位系统中

2017-08-08 21:02:45 1048 1

原创 OpenWRT编译——从源码到固件

接触OpenWRT一年时间,大部分都在编译固件、刷机,遇到过不少问题。这里记录下以前摸索的步骤。op编译过程的wiki:https://wiki.openwrt.org/zh-cn/doc/howto/buildroot.exigence以下步骤的操作环境为64位的Ubuntu16.04 LTS,路由器型号位ZBT-WA05,OP版本为CC。注意事项:1. 请使用一个非root

2017-02-11 00:19:38 13376

原创 安装Ubuntu之后要做的事

仅作为个人备忘录:1、安装搜狗拼音输入法下载地址:http://pinyin.sogou.com/linux/?r=pinyin下载对应的deb包,双击安装即可。2、

2017-02-10 10:32:39 1401

原创 Ubuntu和Widnows系统时差问题

Ubuntu和Windows双系统,发现每次从Linux换回windows打时候,时间总是慢8个小时。搜集资料,结果如下:Windows认为主板时间就是本地时间(系统时间)Ubuntu认为主板时间是格林尼治时间,中国是GMT+8,所以就是主板时间+8小时Ubuntu从网络上自动获取时间,比如说是20:00,那么主板时间就会被校正倒12:00到啦Windows,时间就慢了8小时

2015-12-06 01:49:09 1271

原创 HDOJ-5500Reorder the Books(规律)

本来一道水题,结果自己SB了,看到了n赛后才回过神来......原来O(n)就可以!!!BC题解:By davidlee1999WTK把这题的模型简化一下,有一个1→n1\rightarrow n1→n的排列形成的数列,我们要用最少的操作次数把这个数列排序,每次操作都是把一个数放到整个数列的最前面。首先我们可以注意到每个数最多只会被操作一次。因为假如有一个数被往前拿了两次,

2015-10-12 20:52:45 802

原创 HDOJ-5495 LCS(other)

BC题解:题目中给出的是两个排列, 于是我们我们可以先把排列分成若干个环, 显然环与环之间是独立的. 事实上对于一个长度为l(l>1)l (l > 1)l(l>1)的环, 我们总可以得到一个长度为l−1l-1l−1的LCS, 于是这个题的答案就很明显了, 就是nnn减去长度大于111的环的数目.#include #include #include #include usin

2015-10-09 21:03:55 328

原创 HDOJ 4342History repeat itself(数学)

第一问:求第n大的非平方数是多少。设第n大的非平方数是x,则x前面有sqrt(x)个平方数,于是n+(int)sqrt(x)=x另t=sqrt(x)>0,得到方程 t^2-t-n=0根据求根公式t=(1+sqrt(1+4×n))/2对t向上取整再减去1,就算x前面有多少平方数了,根据最前面的式子,x=n+t第二问:发现可以分为两部分,第一部分是1*3+2*5+3*7+4

2015-09-22 16:05:29 496

原创 HDOJ-2824The Euler function(筛选法求欧拉函数)

欧拉函数的定义 f(n)=[1,n]中与n互质的数的个数筛选法求欧拉函数原理,利用了欧拉的一下性质:(1) if (b%a==0 && (b/a)%a==0) then f(b)=f(b/a)*a;(2) if (b%a==0 && (b/a)%a!=0)  then f(b)=f(b/a)*(a-1);主要思想和筛选法求素数是一样的,枚举约数,然后对倍数进行计算。#i

2015-09-22 11:01:57 623

原创 HDOJ-5446 Clarke and problem(DP)

设d(i,j)d(i, j)d(i,j)表示前iii个数,模ppp为jjj的方案数,则容易得到d(0,0)=1,d(i,j)=d(i−1,j)+∑j=0p−1d(i−1,(j−a[i]) mod p)d(0, 0)=1, d(i, j)=d(i-1, j)+\sum_{j=0}^{p-1} d(i-1, (j-a[i]) \ mod \ p)d(0,0)=1,d(i,j)=d(i−1,j)+∑

2015-09-22 10:12:04 477

原创 HDOJ-4498 Function Curve(自适应Simpson积分)

主要考点是数学计算和自适应Simpson积分题意:给你n系数,函数值,求在x=[0,100]这段区间内曲线的长度。需要准备一些数学知识,高数/数分/工科数分/微积分 中曾经学过,曲线的长度=可以确定,这是一个分段函数,想要计算积分值,就要确定每一段函数的表达式。要确定每一段函数的表达式,首先要确定每一段的转折点。把y=100也算作一个函数,然后把抛物线的方程转为一下,变成:

2015-09-18 19:46:06 643

原创 hdoj-1724 Ellipse(自适应Simpson积分)

浙大月赛的时候卡在了一道积分题目上,被积函数无法求出原函数。连接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3898问了学长方法,学习了刘汝佳的白书《算法竞赛入门经典训练指南》p169附近介绍的方法。自适应Simpson积分也是在被积函数上取微元然后积分,普通的积分取点越多,精度越高,但是时间也越长,在

2015-09-17 20:59:29 950

原创 HDOJ-1521排列组合(指数型母函数)

以前曾经写过普通的母函数,但是指数型母函数还没有写过。就在这里整理一下吧。指数型母函数主要处理排列方案问题。比如hdoj1521这道题就是典型的指数型母函数问题:有n种物品,并且知道每种物品的数量。要求从中选出m件物品的排列数。例如有两种物品A,B,并且数量都是1,从中选2件物品,则排列有"AB","BA"两种。下面是从百度文库里找的一篇ppt(如有侵权请告知)

2015-09-16 11:41:13 633

原创 HDOJ-3037(组合数学)

题意:将不超过m颗的相同的豆子放在n棵不同的树上,每棵树可以为空,求方案数mod p1 题解:可以理解为有m颗豆子,在n棵树上放k颗,然后再加一棵树,放m-k颗,于是变成了m颗相同的豆子放在n+1棵不同树上的方案数。也就是求a[1]+a[2]+a[3]+......+a[n+1]=m,(a[i]>=0)的方案数,但是这种情况并不好计算,我们可以让每一份都加上1,令b[i]=a[i]

2015-09-15 16:04:14 386

原创 HDOJ-5446/2015 ACM/ICPC Asia Regional Changchun Online 1010(数论)

题意:求组合数C(n,m)mod(p1*p2*p3......*pk), pi均为质数,1思路:以前曾经做过一次n,m范围是10^6的(http://blog.csdn.net/moringrain/article/details/46793743),做法是对n!,m!,(n-m)!分解质因数。但是由于这道题n,m的范围是在是太大了,所以此路不通。但是可以观察出这道题的取模很有意思,把模分

2015-09-15 10:58:42 425

原创 HDOJ1411 校庆神秘建筑/2015HDU Summer Trainning(3) - Team 1008 (几何)

HDOJ1411:按照一定顺序给出四面体的六条边长,求四面体体积。公式题目:计算的时候注意把边和角对应好,sqrt里面注意浮点误差,不要对负数开方。#include #include #include #include using namespace std;double a,b,c,d,e,f;double CalAng(double a,double b,doub

2015-09-10 13:52:50 425

原创 HDOJ-5392 Infoplane in Tina Town(置换群循环节长度)

求置换群的循环节长度。除了取模部分,题意和poj2369一样简而言之,给出一个1—n的排列p[i], p[i]表示把数列中a[]中的第p[i]位转移到第i位例如n=5时,p[]=4,1 5,2,3,a[]=1,2,3,4,5进行第一次便后后得到a[]=4,1,5,2,3再进行一次变换后得到a[]=2,4,3,1,5再进行一次变换后得到a[]=1,2,5,4,3再

2015-08-17 16:24:44 564

原创 HDOJ-5391 Zball in Tina Town(数学)

题意就是求(n-1)%n,n很大,O(n)的暴力求法是行不通的。观察可以发现,如果n是合数,那么1*2*3*4*......*n-1中包含了n的所有质因子,比如n=9,3和6中各含有一个3.但是有一个特例,4,只有这个合数不满足此规律。如果是质数呢?题解是“威尔逊定理”:        在初等数论中,威尔逊定理给出了判定一个自然数是否为素数的充分必要条件。即:当且仅当p为素

2015-08-16 14:27:02 583

原创 HDOJ-1787 GCD Again(欧拉函数)

ans=n-1-Eular(n)Eular(n)表示欧拉函数,[1,n]区间内与n互质的整数的个数通式:Eular(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…..(1-1/pn),其中p1, p2……pn为x的所有质因数,x是不为0的整数。Eular(1)=1(唯一和1互质的数(小于等于1)就是1本身)顺便提一下,有一个有意思的公式:一个数的

2015-08-15 15:40:07 614

原创 HDOJ-5371 Hotaru's problem(Manacher)

2015 Multi-University Training Contest 7 1003题当时想到了用Manacher和二分,但是没想到用set去维护,可惜。题解:先用求回文串的Manacher算法,求出以第i个点和第i+1个点为中心的回文串长度,记录到数组c中比如10 9 8 8 9 10 10 9 8我们通过运行Manacher求出第i个点和第i+1个点为中心的回文串长度0

2015-08-12 15:35:24 270

原创 POJ-1830 开关问题(高斯消元)

代码的大部分都是和poj1222一样的,求出自由变元个数就好了。1222题解:http://blog.csdn.net/moringrain/article/details/47397787这道题需要学习的地方是如何处理初始状态和目标状态。初始状态-->目标状态     等同于   全0状态-->初始状态 xor 目标状态另外给系数赋值的时候注意行列的顺序,一开始搞错了调了半天

2015-08-10 16:27:17 445

原创 POJ-1222 EXTENDED LIGHTS OUT(高斯消元)

题意:给你一个5*6的矩阵,每个点上都有一个灯,按下f[i][j]的按钮,f[i][j]位置的灯的状态会改变,它上下左右的灯的状态也会改变(开变关,关变开)。现在给出这个矩阵的初始状态,输出按下哪些按钮,使所有的灯都关闭。做法:利用高斯消元解异或方程组。用x[i][j]表示第i行第j列的灯是否被按下x[i][j] ^  x[i+1][j] ^  x[i-1][j]

2015-08-10 14:19:53 1432

原创 HDOJ-4344 Mark the Rope(数论)

概括一下题意:将一个合数n的因数(不包括1和n)看做一个集合,求一个最大的子集使集合内所有元素都互质,并求出在上述条件下集合元素最大的和是多少。解法:既然要保证子集内的元素互质,就要保证任意两个元素没有质因子。要元素数目做多,则每个元素包含的质因子数目最少,即为1。做法也就出来了,对n进行拆分质因数,表示成 n=(a1^p1)*(a2^p2)*(a3^p3)*......*(ak^pk),

2015-08-08 16:05:31 401

原创 HDOJ-1788 Chinese remainder theorem again(数论)

就是求模线性方程组#include #include #include #include #include using namespace std;typedef long long LL;// X % m[i] = a[i]int m[100], a[100];//计算 ax+by=gcd(a,b),返回gcd值,求出xy LL Ex_gcd(LL a, LL b

2015-08-07 23:10:57 442

原创 HDOJ-3240 Counting Binary Trees(数论)

典型的卡特兰数问题,答案就是卡特兰数列前n项和。关于卡特兰数列:http://www.cppblog.com/MiYu/archive/2010/08/07/122573.html这里比较棘手的问题就是取模问题,要用到乘法逆元,但比起HDOJ4828这道题来(http://blog.csdn.net/moringrain/article/details/47341247)

2015-08-07 16:54:25 550

原创 HDOJ4828 Grids(数论)

一开始想成DP了,后来暴力打表找规律发现原来是卡特兰数列。于是乎就变成了卡特兰数取模问题。递推公式h[n]=h[n-1]*(4n-2)/(n+1)公式中有除法,所以取模的时候要用到乘法逆元。比较方便的一点是,10^9+7是质数,必定和分母(n+1)互质,所以直接用扩展欧几里得去求逆元就好了。关于逆元的应用:http://blog.csdn.net/moringrain/ar

2015-08-07 16:27:09 644

转载 乘法逆元的作用

转载自以下博客,源出处不明,如有侵权请告知博主,我会立即删除:http://blog.csdn.net/tsaid/article/details/7365936若对于数字A,C 存在X,使A * X = 1 (mod C) ,那么称X为 A 对C的乘法逆元。逆元的作用?让我们来看下面的例子:12 / 4 mod 7 = ?  很显然结果是3我们现在对于数对 (4,

2015-08-02 19:28:48 3333 4

原创 HDOJ-2669 Romantic(数论)

裸的扩展欧几里得算法,但要注意题目中要求a为非负数,扩展欧几里得算出来的a可能是负的,需要对a,b进行一下调整,否则会WA。#include #include #include using namespace std;typedef long long LL;LL Ex_gcd(LL a, LL b, LL &x, LL &y){ LL d; if (a == 0 && b

2015-08-02 16:09:18 507

原创 HDOJ-1287 破译密码(数学)

异或性质:C=A XOR B--> C XOR B=A枚举异或的字母,如果是合法的,那么所有解密出来的字母都在[A,Z]之间。自己被优先级坑了一回if((text[i]^key) 'Z')(text[i]^key)一开始没加括号......基础啊,既然没有背过优先级,为了保险,不把握的地方就加上括号吧。#include #include #include us

2015-07-27 16:43:05 399

原创 HDOJ-1576(数论)

看着像扩展欧几里得,努力往上面凑吧。令M=9973,X=A/B, Y=A/M因为n=A%M=A-(A/M)*M=BX-MY现在有BX-MY=n了,B和M是已知的,X,Y未知的,距离扩展欧几里得还差一点。由于gcd(B,M)=1(题干里说了,要利用上),利用扩展欧几里得我们可以算出BX‘+MY’=1中X'和Y'的值、(关于系数正负号的问题,还有待学习......)X=N*X'

2015-07-27 16:19:24 749

原创 HDOJ-1211 RS(数论)

这道题介绍了一种叫做RSA的加密解密算法,非常有趣的。最近开始学习数论,正好拿来入门。关于RSA算法1、选择两个大素数p,q2、令n=p*q,Fn=(p-1) * (q-1)3、选择一个数e,满足14、找出一个d,满足 (d*e)%Fn=1,d称为私钥加密过程:明文为m,密文为c,则c=m^e mod n解密过程:m=c^d mod n顺便介

2015-07-27 15:14:44 407

原创 HDOJ-3949 XOR(高斯消元)

这道题卡了好长时间,终于解决了。网上的题解很多提到“XOR线性基”,然而并没有多少讲解的。找学长讲了一遍,又找了点资料。终于过了。强烈推荐下面的资料:http://blog.sina.com.cn/s/blog_76f6777d0101d0mr.html(更多关于xor的题目,可以去找莫涛的课件:《莫涛 高斯消元解xor方程组》)关于证明,可以去看看上面那篇博客。我这里

2015-07-25 16:43:02 778

原创 HDOJ-4089 Activation(概率DP)

题意:n个人在服务器上排队激活仙剑5游戏,番茄排在第m位。服务器给每个人激活时,可能会发生一下4种情况:事件1:激活失败,队伍保持不变,概率为p1;事件2:连接失败:队首的人回到队尾,概率为p2;事件3:激活成功:队首的人出队,其他人前移,概率为p3;事件4:服务器故障:事件发生后所有未激活的人不能激活,概率为p4;规定事件A:番茄排到小于等于第K个位置时候,出现服务器故障

2015-07-18 09:42:27 330

原创 TJU-3862 Determinant(数学)

看到题目的时候,查了一下“Determinant”——行列式。没学过线代的哭瞎。大一不开线代课的感觉除了我们学院也没谁了后来参考算导713页(原书1223页)递归的算法做了一遍。#include #include #include using namespace std;struct Matrix{ int f[12][12]; void init0() { mems

2015-07-17 14:49:19 504

原创 TJU-3860 Basex(模拟)

题目:http://acm.tju.edu.cn/toj/showp3860.html先是RE,再是WA。。。。。。坑之处:1、RE的原因,题目里只说了模是被空格隔开的,没说是几个空格,我当一个空格处理的。2、WA的原因:人家没说给的数一定是n位。要自己在前面补0.这么一道题调了半天,丢人啊#include #include #include using

2015-07-17 14:41:52 345

空空如也

空空如也

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

TA关注的人

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