【学习笔记】 $learn \ from \ failure \ ? ( 雾$
\(1.\)变量名不要用 \(next\) ,在某些编译器里可能是关键词,可以用 \(nxt\) 代替
\(\\\)
\(2.\)在判断某些条件时应该写成
flag = 条件 ? 1 : flag;
而不是
flag = 条件 ? 1 : 0;
\(\\\)
\(3.\) \(c++\) 自带的 log2
函数貌似会很慢,可以先预处理
for(int i = 1; i <= n; ++ i) log_2[i] = (i & (i - 1)) ? log_2[i - 1] : log_2[i - 1] + 1;
\(\\\)
\(4.\)位运算尽量带括号,(因为太菜了,运算优先级搞不清
\(\\\)
\(5.\)要是要用到 \(long \ long\) 乘法加法尽量把所有变量都设为 \(long \ long\),保不齐哪里就是几个 \(int\) 相乘又忘记强制改类型了就 \(GG\)
\(\\\)
\(6.\)快速乘(在这之前我居然一直写的是 \(O(\log n)\) 的龟速乘哈哈哈哈哈哈哈哈哈哈)
inline ll mul(ll x, ll y, ll p)
{
ll res = (ld) x / p * y + 0.5;
res = (ull) x * y - (ull)res * p;
return res < 0 ? res + p : res;
}
\(\\\)
\(7.\)输出注意是否换行,是否空格
\(\\\)
\(8.\) 清空数组少用 \(memset\) ,可以直接循环需要清空的范围
\(\\\)
\(9.\)在处理很多数据的时候一定要想想相等的情况,或者重边之类的
\(\\\)
\(10.\)数组下标不要从函数传到函数
\(\\\)
\(11.\) 遍历字符串的时候用一个变量提前存字符串长度,否则是 \(O(n^2)\) 的
\(eg:\)
F(i, 0, strlen(s) - 1) //O(n^2)
int len = strlen(s);
F(i, 0, len - 1) //O(n)
【学习笔记】 $learn \ from \ failure \ ? ( 雾$的更多相关文章
- Log4j简单学习笔记
log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常 ...
- 小波说雨燕 第三季 构建 swift UI 之 UI组件集-视图集(六)Picker View视图 学习笔记
想对PickerView进行操作,只能在代码中操作. 下面 ,再添加三个label组件,然后将所有组件配置到代码中(看代码),然后要实现对PickerView的操作,就要实现它的DataSource协 ...
- DSP bootloader学习笔记1
DSP bootloader学习笔记1 彭会锋 参考: TMS320F28xx DSP中内部Flash的应用研究 http://wenku.baidu.com/view/83e9837931b765c ...
- [未完成]WebService学习第一天学习笔记
[未完成]WebService学习第一天学习笔记[未完成]WebService学习第一天学习笔记
- 【转】FragmentTest学习笔记1
原文网址:http://blog.csdn.net/hishentan/article/details/20734489 源码部分: BookContent.java package com.exam ...
- OSGi.NET 学习笔记
OSGi.NET 学习笔记 [目录] 持续更新和调整中,本人学习笔记,非官方文档,难免疏漏,仅供参考. OSGi.NET SDK下载地址. 前言及环境准备 模块化和插件化 概念 实例 小结 面向服 ...
- uIP学习笔记
uIP学习笔记 从零开始使用uIP freemodbus modbus TCP 学习笔记
- springcloud Eureka学习笔记
最近在学习springcloud,抽空记录下学习笔记;主要记录Eureka的实现过程和高可用性的实现 Eureka是一个服务治理框架,它提供了Eureka Server和Eureka Client两个 ...
- jQgrid学习笔记
jQgrid学习笔记
随机推荐
- OpenCV-Python 霍夫圈变换 | 三十三
学习目标 在本章中, 我们将学习使用霍夫变换来查找图像中的圆. 我们将看到以下函数:cv.HoughCircles() 理论 圆在数学上表示为(x−xcenter)2(y−ycenter)2=r2(x ...
- ORA-01017的一种情况:sysdba可以登录,normal不可登录
在arcCatalog中创建完sde数据库之后,用PLSQL登录提示只能用SYSDBA登录. 用户名:sde 密码:123456 数据库:ORCLZLL 连接为:Normal 点击登录 ...
- Conda安装包错误-CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://conda.anaconda.org/r/win-64/repodata.json> Elapsed:
可能是防火墙问题:conda config --set ssl_verify false 安装 openssl . 换源: cmd输入conda config --add channels r 进入C ...
- 访问修饰符public,private,protected,以及不写(默认)时的区别?
private: 1.在当前类开发中,main方法之外可以直接借助名字使用,当前类的main方法中可以使用对象打点的方式直接使用成员. 2.在当前类之外,使用对象(或是类名,针对静态的)打点调用都是被 ...
- Python学习-第三节part1: 关于函数
一 为何要用函数之不用函数的问题 #1.代码的组织结构不清晰,可读性差 #2.遇到重复的功能只能重复编写实现代码,代码冗余 #3.功能需要扩展时,需要找出所有实现该功能的地方修改之,无法统一管理且维护 ...
- 在docker中部署redis主从配置
环境说明: 阿里云服务器 Ubuntu 16.04 docker 1.拉取Redis镜像 docker pull redis 2.配置Redis启动配置文件,此处我创建一个专用目录,存放Redis相关 ...
- sql server 表连接类型
一.数据库访问操作 1.SCAN(最影响性能点,优化切入点) 根据表的不同,分为Table Scan,Cluster Index Scan,Non-clustered Index Scan Table ...
- WinForm中DataGridView复制选中单元格内容解决方案
WinForm中DataGridView鼠标选中单元格内容复制方案 1.CTR+C快捷键复制 前提:该控件ClipboardCopyMode属性设置值非Disable: 2.鼠标框选,自定义代码实现复 ...
- Redis 笔记(三)—— LIST 常用命令
常用命令 命令 用例和描述 RPUSH RPUSH key value [value ...] —— 将一个或多个值推入列表的右端 LPUSH LPUSH key value [value ...] ...
- 《综合》MMM集群
<综合>MMM集群 部署集群基础环境 MySQL-MMM架构部署 MySQL-MMM架构使用 1 部署集群基础环境 1.1 问题 本案例要求为MySQL集群准备基础环境,完成以下任务操作: ...