
基础零散知识点
爱吃老谈酸菜的DV
选择适合自己的。
展开
-
2019年7月22日训练日记(位运算)
今天看了算法竞赛进阶指南里面的知识点,主要看的是位运算部分。总体来说今天看的知识点还比较简单。知识点1.&运算:同1为1,不同为0,同0为02.^运算:相同为0,不同为13.|运算:有1为1,全0为04.~运算:按位取反0->1,1->05.>>左移:在二进制下向左移动,低位以0填充,高位越界后舍弃1<<n=2^n //1向左移n位n&...原创 2019-07-23 09:21:47 · 191 阅读 · 0 评论 -
ceil函数和floor函数
一、ceil函数1.头文件<cmath>2.作用:对小数向上取整,得到的不一定就是整数,因为他的返回值类型是double,有可能就是个小数,但是后边的小数部分全部是0;3. 格式:x=ceil(n);eg:ceil(3.4)=4;二、floor函数1.头文件<cmath>2.作用:对小数向下取整,得到的不一定就是整数,因为他的返回值类型是double,有可能就...原创 2020-02-02 17:30:45 · 1853 阅读 · 0 评论 -
大小写字母判断和转换
一、大小写字母判断1.isalpha:头文件:C++:#include <cctype>C语言:#include<ctype.h>**功能:**判断字符ch是否为英文字母。当ch为英文字母a-z或A-Z时,返回非零值,但不一定是1;否则返回零。格式:isalpha(ch)2.isupper头文件:C++:#include <cctype>C语...原创 2019-11-19 21:06:53 · 1487 阅读 · 0 评论 -
C语言:整数转换十六进制数和八进制
我们之前已经学过进制转化的方法,都是手动转换:模某个数取余在C语言中有直接进制转换的方法,可以将一个十进制的整形数,直接转换成它的八进制或者16进制形式。%x:将整数输出为十六进制数%o:将整数输出为八进制数#include<bits/stdc++.h>using namespace std;int main(){ int x; while(~scanf(...原创 2019-11-19 19:31:15 · 3243 阅读 · 0 评论 -
Manacher算法(马拉车)
什么是ManacherManacher算法是用来求一个字符串中的最长回文串的算法。时间复杂度为:O(2*n) 比较高效。Manacher算法的原理如果直接对原有字符串进行操作的话,需要考虑回文串的长度是奇数还是偶数(偶数长度的回文串没有中心字符,不易处理)。暴力匹配的复杂度是:O(n^3)。所以有了马拉车算法。1. 第一步是对原有字符串进行预处理。在任意两个字符之间及字符串的首尾...原创 2019-10-28 00:22:20 · 179 阅读 · 0 评论 -
C++/G++手动扩栈
转载:https://blog.youkuaiyun.com/tt2767/article/details/47620749?utm_source=blogxgwz0G++:写入主程序最前方int size = 256 << 20; // 256MB char *p = (char*)malloc(size) + size; __asm__("movl %0, %%esp\n" ::...转载 2019-10-23 09:05:25 · 368 阅读 · 0 评论 -
fill()和fill_n()函数的使用方法
一、函数的功能在头文件<cstring>中1.fill()函数,给定数组的首地址和末地址,以及要赋得值value,实现对数组的整体赋值value。2.fill_n()函数给定赋值得起点和要赋值得数量count,以及要赋的value值,实现从起点后给数组赋count个value值。注意:不能在空容器调用fill_n()一、使用格式1.fill():一维数组:fill(a,a...原创 2019-10-13 11:42:17 · 1354 阅读 · 0 评论 -
2019年7月23日训练日记(递归,递推,枚举)
枚举是将所有符合条件的情况全部列举出来找正确答案的算法。递推是以已知的问题边界为起点向原问题正向推导的扩展方式。递归是以原问题为起点,向已知问题边界推导,尝试把状态空间缩小,再通过该路线的反向回溯进行遍历。做了三道感觉比较典型的例题,参考了网上大佬的代码,大佬的代码是真的精简。一、递归实现指数型枚举在1~n这n个整数中随机选取任意多个,输出所有可能的选择方案。#include<b...原创 2019-07-24 09:13:20 · 216 阅读 · 0 评论 -
CodeForces - 271D:Good Substrings(字符串hash)
DiscriptionYou’ve got string s, consisting of small English letters. Some of the English letters are good, the rest are bad.A substring s[l…r] (1 ≤ l ≤ r ≤ |s|) of string s = s1s2…s|s| (where |s| ...原创 2019-08-23 10:47:03 · 307 阅读 · 0 评论 -
进制转化模板
#include<cstdio>char d[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};char a[100];void turn(int n,int k){ int r = 0; while(n!=0) { a[++r] = n%k; n = n/k;...原创 2019-05-23 00:27:32 · 139 阅读 · 0 评论 -
strcmp的用法
头文件:<string.h>功能:比较字符串s1和s2。格式:strcmp(s1,s2);说明:s1<s2时,返回为负数,但不是-1s1==s2时,返回值= 0s1>s2时,返回正数 但不是1原理:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇’\0’为止。...原创 2019-05-16 13:25:42 · 479 阅读 · 0 评论