自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

晓峰信息技术教学工作室

中小学信息技术教学、信息奥赛教学交流、教与学专题探讨

  • 博客(22)
  • 资源 (6)
  • 收藏
  • 关注

原创 C++的 recerse()逆序函数的用法

逆序(反转)无论是在C或是C++中用的都特别多,常用于数组,字符串,容器等,其本身的函数参数也不复杂。 标准C中是没有recerse()函数的,这是C++的一个新增函数,使用需要包含头文件#include reverse函数用于反转在[first,last)范围内的顺序(包括first指向的元素,不包括last指向的元素),reverse函数没有返回值 template &lt...

2019-08-09 10:01:46 1869

转载 inline函数

原文网址: https://blog.csdn.net/K346K346/article/details/52065524 1.inline函数简介inline函数是由inline关键字来定义,引入inline函数的主要原因是用它替代C中复杂易错不易维护的宏函数。2.编译器对inline函...

2018-05-13 13:46:10 1011

转载 优先队列priority_queue详解

原文出处:https://blog.csdn.net/c20182030/article/details/70757660 优先队列引入优先队列是一种特殊的队列,在学习堆排序的时候就有所了解,点“击”查看。那么优先队列是什么呢? 说白了,就是一种功能强大的队列。如果不太清楚队列,可以看看原文作者这篇博客...

2018-05-06 14:42:14 173

转载 [noip2001普及组] T2 最大公约数和最小公倍数问题 解题报告

题目描述Description输入二个正整数x0,y0(2<=x0<100000,2<=y0<=1000000),求出满足下列条件的P,Q的个数条件: 1.P,Q是正整数2.要求P,Q以x0为最大公约数,以y0为最小公倍数.试求:满足条件的所有可能的两个正整数的个数.输入描述Input Description二个正整数x0,y0输出描述Outp...

2018-04-07 08:54:38 617

转载 LA4119 -- Always an integer

题目大意:给定一个形如(P)/D的多项式,其中P是若干个形如Cn^E的项之和,判断他是否在所有正整数处取到整数值. 其中系数C和次数E满足如下条件: 1.E是满足0<=E<=100的整数.若E=0,则Cn^E写成C;若E=1,则Cn^E写成Cn,但当C=±1时除外(C=1时,写成n;C=-1时,写成-n). 2.C为整数.若C=±1,且E不是0或者1,则Cn^E写成n^E或者-n^E.

2018-01-01 15:29:17 215

原创 2017年12月励志杯月赛 题解

T1 中位数(median.cpp)【题目描述】 有一个长度为N的数列{A1,A2,…An},这N和数字恰好是1..N的一个排列。你需要统计有多少个子序列{Ai,Ai+1,…Aj}满足:i<=j且j-i+1为奇数,序列的中位数为B。例如{5,1,3}的中位数为3。 【输入文件】 第一行包含两个正整数N和B;第二行包含N个整数,第i个整数为Ai。 【输出文件】 仅包

2017-12-26 15:20:51 439

转载 UVa11582 巨大的斐波那契数列 (快速幂 同余数与模运算)

题解首先在%n意义下,斐波那契是会有循环节的,这个循环节是多少呢?因为只要有任意两个一样,那么后面一直累加出来的数列也是一样的,那就会出现一个循环节。有n^2个不同的两个的组合,所以n^2项左右一定会出现循环节,实测n=1000的话循环节在1501,比想象的小很多。找到循环节了就可以%了,k=a^b%M(循环节长度)用快速幂取余。算出来后直接输出f[k]就行了。#include<queue>#in

2017-12-24 14:47:38 386

转载 快速幂取模算法详解

1.大数模幂运算的缺陷:快速幂取模算法的引入是从大数的小数取模的朴素算法的局限性所提出的,在朴素的方法中我们计算一个数比如5^1003%31是非常消耗我们的计算资源的,在整个计算过程中最麻烦的就是我们的5^1003这个过程 缺点1:在我们在之后计算指数的过程中,计算的数字不都拿得增大,非常的占用我们的计算资源(主要是时间,还有空间) 缺点2:我们计算的中间过程数字大的恐怖,我们现有的计算机是没有

2017-12-24 14:31:40 678

转载 欧几里得算法和唯一分解定理(数论)

1.欧几里得算法 2.唯一分解定理

2017-12-24 13:26:09 362

转载 UVA11627 Slalom 障碍滑雪

题意在一场滑雪比赛中要通过n个门,给出每个门的坐标(xi,yi)。数据给出w(每个门的宽度),v(水平方向上的最大速度),以及n。 然后是n行门的坐标。在给出m,表示有m双滑雪鞋,每双鞋的速度为s[i]。 问:可以通过所有旗门的滑雪板的最大速度。 解析首先现将s[i]排序,然后二分答案。判断只需要更具前后两个旗门的高度差来计算时间,由上一个可达区间推出下一个可达区间,然后判断上一个区间和下

2017-12-16 15:04:53 240

转载 cmath 函数库常用函数

说明  “math.h”是C语言中数学函数库,包含我们常用的一些数学计算上会使用到的函数。C++中有对应相同作用的头文件“cmath”,当然C++中两个头文件都可以使用,C++向C兼容。笔试必掌握的内容  关于数学函数的内容有很多,需要注意使用的地方就是,输入参数绝大多数要求的是double双浮点类型。所以切记使用的条件:double dRel; int a =10; dRel = sqrt

2017-12-07 15:49:26 1281

转载 DAG之最短路

DAG是学习动态规划的基础,很多问题都可以直接转化为DAG上的最长路、最短路或路径计数问题。 两个经典的DAG模型,嵌套矩形和硬币问题,今天先写第一个嵌套矩形问题。 一、嵌套矩形 第一个DAG模型:矩形嵌套问题 描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽。 矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当 a < c , b < d 或者 b < c , a < d (

2017-12-03 17:52:26 558

转载 解题报告 NOIP2015 子串

这是一道dp题,然后来想想怎么表示状态,对答案有影响的就是A串的第i个字符,B串的第j个字符,和k个子串,简单来说就是和选取的字符和子串的数量有关. 那么设 f[i][j][kk]表示在A串的前i个字符中选kk个子串匹配B串的前j个字符的方案数.求方案数可以采用加法原理,考虑A串的第i个字符,那么这个字符的决策只有取或不取,很明显,加法原理,把不取的方案数和取的方案数加起来就可以,但是状态的定义并

2017-11-05 16:57:17 260 1

转载 解题报告 NOIP2015 信息传递

信息传递 NOIP2015 day1 T2 求最小环两种不同的解题方法 dfs 、 tarjan 算法

2017-11-05 14:33:52 219

转载 Tarjan 算法——求解有向图强连通分量

一.算法简介Tarjan 算法一种由Robert Tarjan提出的求解有向图强连通分量的算法,它能做到线性时间的复杂度。我们定义:如果两个顶点可以相互通达,则称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。有向图的极大强连通子图,称为强连通分量(strongly connected components)。例如:在上图中,{1 , 2

2017-11-05 09:56:30 531

转载 C++ 中的sort排序用法

STL中就自带了排序函数sortsort 对给定区间所有元素进行排序 要使用此函数只需用#include sort即可使用,语法描述为: sort(begin,end),表示一个范围, 例子:#include <algorithm>int main(){ int a[20]={2,4,1,23,5,76,0,43,24,65},i; for(i=0;i<20;i++) cout<

2017-11-03 16:27:41 349

转载 解题报告 Noip2016提高组 组合数问题

题目描述组合数表示的是从n个物品中选出m个物品的方案数。举个例子,从(1,2,3) 三个物品中选择两个物品可以有(1,2),(1,3),(2,3)这三种选择方法。根据组合数的定 义,我们可以给出计算组合数的一般公式:其中n! = 1 × 2 × · · · × n小葱想知道如果给定n,m和k,对于所有的0 <= i <= n,0 <= j <= min(i,m)有多少对 (i,j)满足是k的倍数。输

2017-11-03 14:04:06 296

转载 NOIP基础算法与经典问题02 二维前缀和

相信来看二维前缀和维护的各位一定是对一维前缀和维护问题有足够的了解了,那么二维的前缀和维护实际上是在一维前缀和维护的基础上的升级,把一个数列升级成了矩阵,但是思想是一样的,具体问题如下: 问题描述: 已知n*n的矩阵a,有m次询问,每次询问给定x1,y1,x2,y2四个数,求以(x1,y1)为左上角坐标和(x2,y2)为右下角坐标的子矩阵的所有元素和。注意仍然包含左上角和右下角的元素。 输

2017-11-03 13:38:33 374

转载 NOIP基础算法与经典问题01 一维前缀和

一维前缀和维护是一种基础的小算法,该算法用我们所熟知的数列求和方式优化我们的某些查询操作,是一种动态规划的思想。这里为介绍一维前缀和维护问题,我们来思考这个最简单的问题:问题描述: 已知n个数的数列a,有m次询问,每次询问给定l,r两个数,求 al到 ar 内所有数的和。注意l到r的区间包含 al 和 ar 两个数。 输入数据: 第一行n和m,接下来一行有n个数,表示数列a,接下来有m行

2017-11-03 10:54:38 487

转载 最近公共祖先 LCA 倍增算法

最近公共祖先 LCA 倍增算法倍增算法可以在线求树上两个点的LCA,时间复杂度为nlogn预处理:通过dfs遍历,记录每个节点到根节点的距离dist[u],深度d[u]init()求出树上每个节点u的2^i祖先p[u][i]求最近公共祖先,根据两个节点的的深度,如不同,向上调整深度大的节点,使得两个节点在同一层上,如果正好是祖先结束,否则,将连个节点同时上移,查询最近公共祖先。void dfs(in

2017-10-26 23:34:43 193

转载 memset用法小结

memset函数是按一个字节一个字节来给数组或者是结构体赋值的, 给字符数组复制时可以赋任意值,详见:百度百科memse函数点击打开链接 但需要注意的是给int型的数组复制时的几点注意: 一般常用的复制方式有: [cpp] view plain copy int a[MAXN]; memset(a, 0, sizeof(a));//数组中的所有元素全为0 memset(a, -1, s

2017-10-24 15:50:29 230

转载 原码、反码与补码

在一个字节里的,原码的我已经知道了:最大的是01111111;最小的是11111111。想知道反码和补码最大的和最小的现在我们知道了计算机可以有三种编码方式表示一个数. 对于正数因为三种编码方式的结果都相同:[+1] = [00000001]原 = [00000001]反 = [00000001]补所以不需要过多解释. 但是对于负数:[-1] = [10000001]原 = [11111110]反

2017-10-04 12:51:57 294

NOIP2004-2016提高组复赛历年原题&题解合集

NOIP2004-2016提高组复赛历年原题&题解合集,精心整理,希望对你有帮助

2018-09-04

NOIP2004-2017初赛试题合集

NOIP2004-2017初赛试题合集,精选整理,希望对大家有用

2018-09-04

Python入门讲座ppt

Python入门讲座ppt 金华教育学院高中信息技术教师培训,浙江新课改,新课表培训

2018-09-04

Vb批改photoshop操作题的基本程序

Vb批改photoshop操作题的基本程序,内含如何使用Visual Basic提取Photoshop 基本属性的代码

2010-01-06

Visual Basic程序操作文件属性

ViaualBasic程序操作 文件属性的基础代码,适合初学者学习参考,欢迎交流

2010-01-06

用VB实现excel作业的阅卷

用VB实现excel作业的阅卷 文档内含关键技术代码很值得参考哦

2010-01-06

空空如也

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

TA关注的人

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