![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
训练笔记
yanhua_tj
这个作者很懒,什么都没留下…
展开
-
二分
二分以前高中数学求零点时提到了二分法和那个差不多的就是平均分成两份,然后看满足条件的那个在哪一份中再把那一份再平均分,再看满足条件的那个再哪一份中以此类推二分适用于1、具有单调性的题目2、可判断的题目3、会减少复杂度例:在数组a[10]={1,3,5,7,9,10,11,17,18,19}中判断一个数在不在数组中可以用循环判断,也可以用标记法但是如果查找的数组比较大,效率...原创 2018-11-28 22:39:42 · 119 阅读 · 0 评论 -
前缀和,积,后缀和,积
文章目录位运算~取反符号<<,>> 左移,右移符号& 位与运算符| 位或运算符^ 异或运算符EOF和scanf函数scanf函数的返回值while(scanf("xxx")!=EOF)while(~scanf("xxx原创 2018-11-23 09:38:17 · 1491 阅读 · 0 评论 -
哈希和素数打表
输入一个数判断数组中是否存在这个数输入一个数判断数组中是否存在这个数举例子吧一个数组a[7]={1,5,7,2,13,9,8}然后再定义一个a数组中最大元素+1的数组b[14]={0};for(i=0;i<7;i++)b[a[i]]=1;如果输了一个数w,则需要判断b[w]是不是为1,如果是1,a数组里有这个数输入一个数判断数组中是否存在这个数并输出这个数在数组中的下标举例...原创 2018-11-23 07:54:52 · 251 阅读 · 0 评论 -
取模运算
取模运算主要是用来求两个大数a,b进行 + or - or * 后对某个数mod求余比如a+b或者a*b超过了long long int ,就要用取模运算把值限制在0~mod内加法(a+b)%mod=(a%mod+b%mod)%mod;减法(a-b)%mod=(a%mod-b%mod)%mod;乘法(ab)%mod=(a%mod)(b%mod)%mod;除法 (用到逆元,尚未了解...原创 2018-11-23 07:52:45 · 5669 阅读 · 0 评论 -
EOF和scanf函数
EOF和scanf函数scanf函数的返回值scanf函数返回成功读入的数据项数,读入数据时遇到了“文件结束(end of file)”或者错误则返回EOF,EOF定义为int型的-1,end of file 为Ctrl+Z或Ctrl+D。例:scanf("%d",&a); 正常取值返回1scanf("%d,%d",&a,&b); 正常取值返回2如果输入1,2,...原创 2018-11-23 07:50:06 · 907 阅读 · 1 评论 -
尺取
这种方法用于,需要在给的一组数据中找到不大于某个上限的“最优连续子序列”poj 3061题给长度为n的数组和一个整数m,求总和不小于m的连续子序列的最小长度输入n=10,m=155 1 3 5 10 7 4 9 2 8输出2...原创 2018-11-23 07:21:25 · 2714 阅读 · 0 评论 -
GCD最大公约数
给出a,b求a和b最大公约数a是由b的倍数+余数1得到的辗转相除法b是由前面的余数1的倍数+余数2得到的以此类推直到余数n为0,余数n-1就是最大公倍数a=b倍数+p1;b=p1倍数+p2;p1=p2*倍数+p3;……p n-2=p n-1 * 倍数+0;p n-1就是最大公约数下面上代码#include <stdio.h>int GCD(int a,i...原创 2018-11-23 00:07:45 · 616 阅读 · 0 评论 -
快速幂
快速幂和快速乘差不多也是a,b两个数,ab 对mod求余ab 可能超出范围所以要把b转成二进制,分成几次运算例:a=11,b=11;b=11,二进制1011a ^ (1 * 23 + 0 * 22 + 1 * 21 + 1 * 20) = a8+2+1=a11下面是代码#include &lt;stdio.h&gt;int fast_pow(int a,int b,int mo...原创 2018-11-22 23:52:01 · 119 阅读 · 0 评论 -
快速乘
快速乘我们先来谈谈,两个大数(可能会超long long int)相乘对mod求余原创 2018-11-22 23:40:37 · 222 阅读 · 0 评论 -
位运算
文章目录位运算~取反符号<<,>> 左移,右移符号& 位与运算符| 位或运算符^ 异或运算符位运算~取反符号十进制2 -->10 (B)~10=01 十进制 1<<,>> 左移,右移符号<<是左移符号例 4<<1就是100左移一位变成1000得到8>>是右移符号例 4原创 2018-11-22 23:04:52 · 125 阅读 · 0 评论 -
C++中STL的sort函数
简单介绍C++ sort函数这个函数需要这个东西#include <algorithm>using namespace std;这个sort( , , )可以带两个参数也可以三个参数第一个参数是数组的首地址,一般写上数组名就可以,因为数组名是一个指针常量。第二个参数,首地址加上数组的长度n(代表尾地址的下一地址)最后一个参数是比较函数的名称(自定义函数cmp)...原创 2018-11-28 22:55:35 · 518 阅读 · 0 评论