填坑帖 By cellur925
从今天到noip 记录下我犯的一切愚蠢错误。
7.17~7.19 把文件 注释掉了,输出语句放在了关文件之后
7.19 判断素数的板子 把%写成了&
bool prime(int q) {if(q==1) return 0;if(q==2||q==3) return 1;if(q%6!=1&&q%6!=5) return 0;int cnt=sqrt(q);for(int i=5;i<=cnt;i+=6)if(q%i==0||q%(i+2)==0) return 0;return 1; }
7.20 慎用诸如“while(tmp)"的表示! 老老实实写tmp>0 or tmp>1 坠吼了。
7.26 写线段树的时候一定要建树啊!
7.26 使用邻接表时,如果有节点为0,那么head应初始化为-1.
您想初始化,但是连n都还没输入,初什么始化!(摔)
7.27 组合数初始化和递推时要有相同的上界(循环上界),否则会炸掉
及时取模!!!
7.29 数位dp要把初值设成-1qwq。因为0也是枚举的数呀qwq。
7.30 输出中间结果的/debug的语句一定要删掉呀qwq。否则会too many or too few lines。
有取模的复杂运算,如越狱,一定要注意如果最后为负数,加上模数。
右移与“/”通常用来去向下取整,需要注意的是算术右移是真正的向下取整(负无穷),而/本质是向0取整。
这种差异在有负数存在时影响最大。如(-3)>>1=-2,而(-3)/2 =-1
7.31 在做USACO回家时,发现linux和windows下的换行差异好大!先挂起这个问题,有noilinux虚拟机后好好研究下。
Linux中换行符是'\n'而Windows中是'\r\n'(多一个字符),有些数据在Windows中生成,而在洛谷评测机Linux环境下评测。这种情况在字符串输入中非常常见。
说人话也就是linux两个换行符,win下一个换行符
8.9 多组数据清空head数组/多组数据“~”/“EOF”防止死循环
8.10 存图时注意重边和自环
8.16 点从0开始编号时,注意head用-1赋初值,遍历的时候改为
for(int i=head[u];i!=-1;i=edge[i].next)
8.19 今天发现了一个害怕的事:在win下头文件如果误打为大写(如Cstdio),不会CE
然鹅 在linux下会CE!!!(逃
8.24 写dp题的时候:要注意赋特值和初值(memset)间的前后关系!
8.24 朋友,无解的时候是不是要输出一些东西???(已经犯了好多次低级错误)
8.25 前排围观kkksc03爷
变量名不要开pipe time x1 y1 next等,具体可参照cpluscplus/algorithm
I64d怕燕大老爷机跑不过
样例测试 wtm今天才知道GGF送大样例(在选手目录文件夹中)
8.27 写spfa的时候出队以后要把vis[]设成0
8.29 想起来要开long long的时候也要在输出时改成lld!!!否则没用!
9.5 用scanf printf时一定注意数据类型!(Chemist的错误
进行广搜深搜等题目需要判断越界 先判断!
这样就是对的==
先判断vis[][]就是错的==
9.9 读单个字符用个小的字符数组吼啊==
9.11 hash不要当变量名==
while((ch=getchar())!=EOF)
这句必须要加括号 我也布吉岛为什么==
string类型,赋值一定存在严格的先后关系。
tmp=seq[i]+tmp与tmp=tmp+seq[i]是完全不一样的==
string类型开始赋的时候不能为空:
常见技巧开始先赋成string tmp=""
(见于USACO魔板、联系)
9.13 (常见于计数问题)给一个ans longlong型的可能会开到很大如1e40,这时我们平时用的什么0x3f3f3f3f全部不好使==
9.16 (计蒜客模拟赛)LAdalao因为没看全数据范围 所以....没有AK!!!!
9.25 map的[]操作是logn复杂度的....!
观赏了一波zsydalao的操作,发现结构体可以直接强制类型转化地赋值:cellur[i]=(sta){i,j},ij要按结构体中声明变量的顺序进行。
防止整数被0除。
9.26 一些防止内存泄漏的问题:在判断数组是否越界、队列是否清空的问题上,我们要先判断。
因为&&是从左到右判断的orz....
这是一个严重的问题~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
9.28 又是犯傻的一天~~~
把1e6当成100000(逃)1e6是1000000啊喂!
10.1 写了个线段树1的板子:ask没开longlong ,然后...没下传懒标记(wtf?)
有些题初始化是输入的数,这种情况不能在全局初始化(还没输进来)。如种树中的“$num$“
10.3 kmp里的next数组,虽说是这么叫,但是你真的放心把它写成next 嘛?nxt好。
尽量不要用memset赋1(真香),会出现各种奇怪的错误。赋0,128,127,0x3f海星。
(在做差分约束--糖果时遇到的)手写for循环初始化不行嘛?(摔)
10.4 建图 多组数据:清空head&tot
10.5 dp的时候考虑枚举0
10.6 有的题必须用快速乘==(炸longlong且不想高精的情况)
10.7 LCAinit时一定要记得q.push(v)
10.8 防止整数被0除!& 发现特殊性质,从这里挖掘做题!
list也是关键字!
10.10 乘哈希131的时候,最好把131赋为一个unsignedlonglong类型的全局变量。
10.11 map是个好东西 可以处理负数下标qwq
10.12 strlen尽量不要多次调用 会TLE,因为听说操作是$O(n^2)$的。
10.14 end是关键字!
10.25 好久没来了qwq。好像dijkstra不能跑最长路?
10.26 32位整数:int;64位整数:longlong。别问我为啥要记这个233.
10.27 给二维数组赋初值的时候,一定要尽量把空间用满,不开大。比如数独
const int group[10][10]= {0,0,0,0,0,0,0,0,0,0,0,1,1,1,2,2,2,3,3,3,0,1,1,1,2,2,2,3,3,3,0,1,1,1,2,2,2,3,3,3,0,4,4,4,5,5,5,6,6,6,0,4,4,4,5,5,5,6,6,6,0,4,4,4,5,5,5,6,6,6,0,7,7,7,8,8,8,9,9,9,0,7,7,7,8,8,8,9,9,9,0,7,7,7,8,8,8,9,9,9, };
如果开成$group[9][9]$和$group[50][50]$就显然不行,因为后者在运行时会理解为连续的一段即$group[1][1~50]$。一定要注意!
10.30 初值赋成负无穷和0谨慎选择!这在数据结构题目(有负权)的时候应尤为注意~
10.31 end是关键字!!!啊啊啊啊啊啊啊啊心虚的一批!
取某一位的时候,int类型和bool类型的区别!(最长异或路径)
11.2 要膜东西的时候如果式子出现了减号一定加上模数!!!!
11.6 二分的时候 如果改变了原来的值 要赋到新的变量中 防止以后再搜的时候不是原来的情况
考noip2013 边权少了2倍hhh,lca写挂了一个符号
转载于:https://www.cnblogs.com/nopartyfoucaodong/p/9339780.html
填坑帖 By cellur925相关推荐
- 在ThinkPad X280加装M.2硬盘上安装 Ubuntu 18.04.3 填坑记录
填坑背景 用了一段时间的X280后,突然想在M.2接口上加装一个 NVMe 2242 的SSD,发现 Lenovo 的BIOS设置的非常奇特.能够检测到这个硬盘,但是启动项里就是不能识别!或许是直接就 ...
- java.lang.OutOfMemoryError:GC overhead limit exceeded填坑心得
该文章出自:http://www.cnblogs.com/hucn/p/3572384.html 分析工具:http://www.blogjava.net/jjshcc/archive/2014/03 ...
- 20150726 填坑日记
三中内填坑: 1. 组合数递推什么的 C(m,n)=C(m,n-1)+C(m-1,n-1).填了个大坑,以前没认真听课QAQ 2. 裸题过河卒 3. 缺角正方形摆放车统计,分上下部分,枚举上部分放几个 ...
- 传统行业转型微服务的挖坑与填坑
原文:传统行业转型微服务的挖坑与填坑 一.微服务落地是一个复杂问题,牵扯到IT架构,应用架构,组织架构多个方面 在多家传统行业的企业走访和落地了微服务之后,发现落地微服务是一个非常复杂的问题,甚至都不 ...
- 开发工具总结(4)之Android Studio3.0填坑指南
序言 Android Studio 3.0 上篇讲了: 全面总结Android Studio2.X的填坑指南 这篇讲一下AS3.0的坑.. 作为这个世界上走在最前沿的生物"猿",怎 ...
- 【结果很简单,过程很艰辛】记阿里云Ons消息队列服务.NET接口填坑过程
Maybe 这个问题很简单,因为解决方法是非常简单,但填坑过程会把人逼疯,在阿里云ONS工作人员.同事和朋友的协助下,经过一天的调试和瞎捣鼓,终于解决了这个坑,把问题记下来,也许更多人在碰到类似问题的 ...
- Android Studio 填坑指南
前几天发布了一篇名为<Android Studio 安装.配置及第一个程序演示>的博文,有不少童鞋都认真阅读过并照步骤一步一步操作了一遍,有滴如期成功地装好了,然鹅有滴反映说这不对呀,为森 ...
- 即将上线的Hive服务器面临的一系列填坑笔记
即将上线的Spark服务器面临的一系列填坑笔记 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.18/10/19 16:36:31 WARN metastore.ObjectSt ...
- 第二篇:salt-api使用填坑指南
前言 salt-api在使用时,有些坑欲哭无泪,一路趟雷过后,总结了一趟salt-pai使用填坑指南,保君一路畅通. salt-api 安装 #本文的安装版本 2018.3.2-1.el6 yum i ...
最新文章
- 设计模式-建造者模式(05)
- 网络营销专员浅析如何面对网络营销过程中的降权处理
- Apache 配置支持HTTPS的SSL证书
- 如何修改influxdb表结构_使用nginx-lua修改influxdb API的返回结构
- 写了一个 SSO 单点登录的代码示例给胖友!
- 【Linux】工作管理
- 洛谷 P3372 【模板】线段树 1(线段树区间加区间找)
- css 图片换行_好程序员web前端学习路线分享CSS浮动-文档流篇
- apt-get update 问题 及gcc高亮
- 从事人工智能要学计算机什么专业,人工智能专业需要什么学历
- 《人月神话》(The Mythical Man-Month)4概念一致性:专制、民主和系统设计(System Design)...
- iPhone全部设备分辨率速查
- 利用callgrind+gprof2dot+dot进行性能分析
- 查询-SPJ练习1参考答案
- [VN2020 公开赛]simpleHeap-记录一次gef调试过程
- 在Windows 7或Vista中配置磁盘碎片整理程序计划
- 上饶师范学院计算机科学与技术专业就业前景,上饶师范学院毕业生就业质量年度报告.PDF...
- C++ 程序编译过程:从代码到程序
- [论文笔记] A Survey of Software Refactoring(TOSE, 2004)第一部分
- linux给音乐添加封面,利用ffmpeg读取音乐文件的专辑信息(包括专辑封面图片)
热门文章
- php 9000 端口没起来,PHP无法监听9000端口问题/502错误解决办法
- SQLi LABS Less-8 布尔盲注
- Oracle备份与还原(exp和imp),导出导入
- linux windows死机,linux死机的处理方式
- 一场游戏平台商与游戏大厂的战争
- 一窥 ARM 的 AI 处理器
- JS中创建对象的方法
- scrapy里的selector,不能有正则提取
- python测控_基于RN8302和Python的电能测控系统设计
- python selenium 自动化 第四章-实用selenium+python实现web自动化测试第四节