C++/C
文章平均质量分 64
N0I0C0K
擅长摸鱼....touching fish
展开
-
浅析同余最短路
同余最短路用来解决什么问题当出现形如“给定n个整数,求这 个整数能拼凑出多少的其他整数(n个整数可以重复取)”,以及“给定n个整数,求这n个整数不能拼凑出的最小(最大)的整数”,或者“至少要拼几次才能拼出模K余p的数”的问题时可以使用同余最短路的方法。状态转移方程f(i+y)=f(i)+yf(i+y) = f(i) + yf(i+y)=f(i)+y举例以一个简单的问题为例子给定x,y,z,hx,y,z,hx,y,z,h.对于ax+by+cz=k,k∈[1,h]ax+by+cz=k, k原创 2022-01-13 10:09:40 · 231 阅读 · 0 评论 -
浅析差分约束
差分约束前置知识图的邻接表SPFA(最短路算法)干嘛用的对于有mmm个不等式方程, nnn个变量的方程组xi−xj<=ckx_i-x_j<=c_kxi−xj<=ck..........................................................................................1<=i,j<=n1<=i,j<=n1<=i,j<=n需要求解一组x1,x2,.原创 2022-01-11 13:31:35 · 271 阅读 · 1 评论 -
素数判断算法
素数(质数)他的定义是:除了1和他本身,没有其他因数。所以可以得出 2,3,5,7...都是质数判断算法暴力只需要找到一个不大于他本身的因数就不是质数,暴力枚举,复杂度高暴力优化我们只需要枚举到Sqrt(n)Sqrt(n)Sqrt(n)就行了,只要之前没有出现因数,后面也不会出现bool isPrime( int num ){ int tmp =sqrt(num); for(int i= 2;i <=tmp; i++) if(num %i==原创 2021-10-05 09:52:51 · 147 阅读 · 0 评论 -
如何将int加到const char* 后面
**如何将int加到const char* 后面**#可以用sprintf();具体如下const char* chchar* a;sprintf(a, "%s%s%d", "AABBCC", " : ", 5);ch = a;最终输出结果:ch = "AABBCC : 5";#因为刚才被注册坑了,所以重写了一次,坑太深了新人一个,以后会多写技术类博客...原创 2018-10-02 20:24:24 · 1679 阅读 · 0 评论 -
廉价的无线通信方案——nRF24L01+
**廉价的无线通信方案——nRF24L01+最近在写arduino无线通信的项目,找到了几种无线通信方案,Xbee确实是一个很好的产品,做工精致,稳定可靠,DIY的梦想,但价格却是一道不可逾越的鸿沟(来自技术宅贫穷的目光),150¥-200¥之间,无线通信起码得要2个吧,少说也300¥,家里没矿还真耗不起。出来吧,nRF24L01+!!如此昂贵的Xbee,势必是要被取代的,于是就发现了nR...原创 2018-11-02 12:40:30 · 2266 阅读 · 0 评论 -
如何自己写一个基于栈,虚拟机的语言
写一个基于堆栈的语言想必大家都已经了解GOF的解释器模式,他的优点很明显-安全,因为语法行为是我们自己定义的,不直接接触底层,但缺点也很明显——效率低,内存开销大。再来看下我们的C++,直接编译成机器码,机器码是一组密集的,线性的,底层的指令,效率飞快。但又有谁愿意直接编辑机器码呢。那有没有兼得熊掌和鱼的方法呢,有——定义自己的虚拟机器码,然后再在需要的地方写一个小的模拟器。我们将这个模拟...原创 2019-01-20 11:48:18 · 1031 阅读 · 0 评论