NOIP 挂分秘籍
FBI Warning:你将看到的内容极其危险,智慧的人会利用它挂分,而误入歧途的人会用他得分,请慎重食用!!!
NOIP挂分秘籍(待补全):
本人即将面临AFO,生涯回忆如下没人稀罕看的东西
-
-1.关键的关键在于你要先报名NOIP。
-
0.下面这一车

- 1.使用万能头文件。
#include<bits/stdc++.h>
后定义 \(x1,y1\) 变量,当场CE。
-
2.新开数组多组数据不写 \(memset\) 。
-
3.注意你的清空数组 \(memset(t,0,sizeof(0));\) (什么你没看出哪里有问题??? \(sizeof(0)\) 警钟撅烂。
-
4.上传文件前删去 \(exe\) 文件时不要使用 \(Shift+Delete\) 否则可能连自己程序也删了。
-
5.循环变量名要看清。
for(int j=1;j<=m;j++)
{
cout<<t[i]<<" ";
}
写完之后看起来非常的和谐,仔细一看><。
-
6.写完程序但是注释了 \(freopen\) 。
-
7.不看比赛要求没建子文件夹。
-
8.全文替换 \(int\) 导致 \(main\) 函数出错。
-
9.输入输出错误。
scanf("%d",a);
printf("%d",&a);
- 10.线段树查询操作的范围判定问题:
if(a<=t[x].l&&b<=t[x].r) return t[x].pre;
评价:???
- 11.线段树多个相似操作复制后忘记修改。
int query2(int x,int a,int b)
{
if(t[x].l>=a&&t[x].r<=b)
{
return t[x].rpre;
}
int mid=t[x].l+t[x].r>>1;
int ans=0;
if(a<=mid)
{
ans+=query1(x*2,a,b);
}
if(b>mid)
{
ans+=query1(x*2+1,a,b);
}
return ans;
}
- 12.括号没加对位置(或者加少了。
ans+=d*mbws[i]*(n/(d*i)*m/(d*i));
这是错误的,下面的是正确的
ans+=d*mbws[i]*(n/(d*i))*(m/(d*i));
如果你写了上面那个在P1447会被卡掉90pts
至于为什么嘛~不知道(求解。
- 13.并查集合并不 \(find\) 。
fa[e[i].to]=find(e[i].from);
下面是正确的。
fa[find(e[i].to)]=find(e[i].from);
-
14.文件格式错误(警钟长鸣)——来自Anoshag_Ruwan
-
15.tarjan判断所属环不考虑起始节点。
错误的:
void dfs(int x,int fa)
{
dfn[x]=low[x]=++cnt2;
s[++top]=x;
ins[x]=1;
for(int i=head[x];i;i=e[i].next)
{
int to=e[i].to;
if(!dfn[to])
{
dfs(to,x);
low[x]=min(low[x],low[to]);
}
else if(ins[to])
{
low[x]=min(low[x],dfn[to]);
}
}
if(dfn[x]==low[x])
{
cnt3++;
while(s[top--]!=x)
{
bl[s[top]]=cnt3;
ins[s[top]]=0;
}
}
}
正确的:
void dfs(int x,int fa)
{
dfn[x]=low[x]=++cnt2;
s[++top]=x;
ins[x]=1;
for(int i=head[x];i;i=e[i].next)
{
int to=e[i].to;
if(!dfn[to])
{
dfs(to,x);
low[x]=min(low[x],low[to]);
}
else if(ins[to])
{
low[x]=min(low[x],dfn[to]);
}
}
if(dfn[x]==low[x])
{
cnt3++;
do
{
bl[s[top]]=cnt3;
ins[s[top]]=0;
}while(s[top--]!=x);
}
}
原题P1407稳定婚姻
-
16.使用了一车memset导致TLE。
-
17.线段树不建树。
-
18.最大值开小,如
ans=1e9+7
-
19.bool类型函数不 return 0;
-
20.开long long 导致 MLE。
-
21.set判s.end边界及s.end()为指最后一个的后一个。
-
22.freopen 必须加
<cstdio>
否则不会报错但会爆零。
- 23.变量名不要使用关键字如:
next max min map x1 y1 pipe 等,
-
24.值域过大不能使用内置log函数判断二进制位数(爆精度)。
-
25.右移左移运算不写
1ll<<64(关键的关键是在于你要知道关键在于什么,你知道了关键那你就知道了关键在于什么,关键在于要写1ll)
会默认 int 类型。
-
26.多次进行操作较少的dfs(即dfs本身复杂度占比较大时),可以将树排成dfn序后再跑dfs。
-
27.不要听pjy的,一定要随机开掉所有题,但是不要思考太久,先写完所有的暴力然后选择一道最简单的写正解。
-
28.考试时多洗脸,考前认真睡觉。
-
29.不要听信他人谗言,不要随意加奇怪语句,例如windows.h以及火车头等一大堆奇怪的东西。
-
30.不要急不要急不要急。
-
31.考试时飞龙骑脸或者大势已去时不要摆烂,不要玩扫雷,没有扫雷也不要自己写扫雷。
-
32.动动你的脑子(nz)。
-
33.不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose 不要写 fclose(by pjykk)
-
34.能不写快读就不要写快读。

浙公网安备 33010602011771号