更新一下:
1.刷水题
2.比赛时不要盲目交题
3.Enjoy the game
关于输入输出:
关闭同步
1 ios_base::sync_with_stdio(0); 2 cin.tie(0); 3 cout.tie(0);
关同步,加速输入输出,但是比scanf慢
并且最好不要和scanf,printf一起用
快读
1 inline int read(){
2 register int x=0,f=1;char ch=getchar();
3 while(ch>'9'||ch<'0'){if(ch=='-')f=-1;ch=getchar();}
4 while(ch>='0'&&ch<='9'){x=(x<<3)+(x<<1)+ch-'0';ch=getchar();}
5 return x*f;}
6 int n;n=read();
一到下雨天
被hack过的心隐隐作痛
字符串的输入
getchar()!!!!
别忘!!
还有
最好是scanf(“%s",a+1);
而不是for(1,n)scanf("%c",&c);getchar();
各个OJ
首先!当然是我们学校的:icpc.njust.edu.cn 南京理工大学online judge
交题目的界面不会像POJ那样一不留神就被刷没了,而且可以统计题数,找题目也方便,还可以享受AC后自己添tag的快乐~
POJ不给用万能头,而且经常,崩,但是有很多经典好题
HDU有个相关题目功能,很好用
CF,g++编译器printf函数要用%I64d,不支持system("pause");一般比赛的时候可以关同步,但是有些情况下还是会慢很多。
codeforces在比赛期间会pretest大概10个数据,比赛后进行system test,如果解法过于暴力,可能会FST,也有可能被hack掉。
ZOJ也不支持system("pause")
关于读题
读题
现在给自己的要求是,
1.英文题面读两遍之后丢到在线翻译里再读一遍
3.看清题目要求的东西:是否打印路径?
要求最优解还是满足最优解的数量;
是否满足条件,不满足条件时打印-1 or 不存在不满足条件的测试点?
2.手算样例。
3.考虑数据规模(是否可以暴力)
4.想算法实现:
不要想得过于复杂:有时候看起来很难实现的问题,其实可以贪心解决,也可能是满足某一条件即可,
可能是博弈,可能是推公式
不要想得过于简单:考虑特殊情况(有的样例里没有给出)、也要考虑时间复杂度
5.想完后再用想好的算法手推一遍样例
今晚得出的经验
CF的AB题 不要交那么多次!!!!
写的时候别看 friend rating
开一题就一题,尤其是前3道,不要跳着写
期望如果超出本身的能力,就会失望,非常失望