随笔分类 - c++竞赛基础知识
摘要:进制转换 网上查找了很多关于进制转换的博客,发现好多不同进制之间的转换代码实现过于复杂、冗余。而进制换算又是算法竞赛常常考到的基础知识点,清晰的代码实现是十分有必要的!今天我就针对常见的进制换算做一个详细、清晰的总结,希望对你的学习或者竞赛有些许帮助! 一、进制基本介绍 什么是进制? 就是进位制,是
阅读全文
摘要:位运算 & 与 | 或 ~ 非 ^ 异或 >> 右移 << 左移 常用操作: (1) 求x的第k位数字 x >> k & 1 (2) lowbit(x) = x & -x,返回x的最后一位1 常用库函数 (1) reverse 翻转 翻转一个vector: reverse(a.begin(), a.
阅读全文
摘要:二进制 二进制逢二进一,每位的取值只能是0或1 原码、反码、补码 注:计算机里都是以补码的形式存储数据的! 原码:最高位为符号位,0代表正数,1代表负数,非符号位为该数字绝对值的二进制(以一个字节(8位)为例) 5 -5 原码:0000 0101 1000 0101 反码:正数的反码就是原码,负
阅读全文
摘要:STL 一、动态数组vector #include vector是变长数组,支持随机访问,不支持在任意位置O(1)插入。为了保证效率,元素的增删一般应该在末尾进行。 声明 #include <vector> 头文件 vector a; 相当于一个长度动态变化的int数组 vector b
阅读全文
摘要:变量、输入输出、表达式与顺序语句 常用变量及类型 类型关键字 布尔型 bool 字符型 char 整型 int 浮点型 float 双浮点型 double 1. bool falae/true 1 byte 2. char 'c','a',' ','\n'(一个字符——单引号) 1 byte 3.
阅读全文