![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
----------算法----------
zuhiul
这个作者很懒,什么都没留下…
展开
-
树状数组-必知必会
更好的阅读体验定义首先参考维基百科的定义:A Fenwick tree or binary indexed tree is a data structure that can efficiently update elements and calculate prefix sums in a table of numbers.翻译过来就是:Fenwick树,或者说二叉索引树是一种能高效对一个数组,更新并计算前缀和的数据结构。所以根据定义来说,这个数据结构一定支持两种高效操作:更新操作,例原创 2021-10-11 20:19:15 · 138 阅读 · 0 评论 -
关于比赛中烦人的多组样例
更好的阅读体验打比赛的时候我们经常会遇到一些多组样例的情况,通常情况下我们都是这么做的:int t;cin>>t;while(t--) { solve();}但是很多时候我们并不需要知道 ttt 是多少,他在我们眼里就是个 无用 的变量,但是很多时候又不得不定义,就很烦。直到今天,我终于找到一个非常骚的操作,记录于此#include<bits/stdc++.h>using namespace std;struct MultiCase {原创 2021-09-28 14:57:09 · 101 阅读 · 0 评论 -
【快速幂模和组合数取模】
【快速幂模和组合数取模】记得在我第一天学习编程的时候老师就和我们说:为什么要学计算机呢?因为它速度快啊。一句玩笑话,不过确实快啊。这几天水题的时候就遇到了这样一个问题a^b%c,想了好几个方法都一直tle,一直不知道为啥,后来才知道有一个神奇的算法,快速幂,真是好用也神奇,真的是,我们全家都用它。 下面来介绍几个基本的求幂模的方法。 1.幂模的递归实现。直接贴上代码了,没什么好分析的。原创 2017-03-13 22:56:37 · 815 阅读 · 0 评论 -
筛法求素数
素数是常用的一种神奇的数字,记得我读初中的时候就手动计算过一百到两百的素数,计算量还是不小的,现在想想还是蛮有趣的。今天就来讲一下怎么快速的计算素数。以一百万为例。最原始的方法就是逐个判断。#define Max 1000000bool prime[Max]={false};int main (){ for(int i=1;i&lt;Max;i++) { ...原创 2017-04-18 17:25:42 · 246 阅读 · 0 评论 -
位运算浅谈
一年之前,一位很好的老师带我走进了计算机的世界,从此以后给我带来了不可逆转的好的影响,记得这是以前老师让我写的文章,但是当时的我确实才疏学浅(当然现在也是),认识不足,很难达到老师的要求,所以一直没有动手,后来的慢慢接触,大概算是懂了一些东西,这里写出来给大家分享。其实大部分的东西都可以百度到,包括很多用法,我这里只给出自己的一些看法,百度上有的东西我就不贴在这里了,各路大神不喜勿喷,权当笑话看看吧原创 2017-06-08 22:43:39 · 267 阅读 · 0 评论 -
多项式求解【模板】
#include<iostream>#include<cstdio>#include<cstring>#include<string.h>#include<algorithm>#include<vector>#include<cmath>#include<stdlib.h>#include<time.h>#include<stack>#include<set>#include<原创 2017-11-23 19:56:12 · 320 阅读 · 0 评论