A.首先对于战略进行总结——活得清楚才能活得好
1.如何快速进入状态
远离手机,放歌,由易到难,手眼心口同步启动
2.做题应该怎么做
做题以目标为导向,每天总结第二天的背诵内容
有用的网页内容要及时计入当天的工作计划,还没有写完或者查验的代码要保留好工作现场
定时定计划,手眼心口同步
3.选题怎么选
LeetCode入门
4.一天怎么衡量自己学的好不好
每天至少两新一旧这个量一定要达到
定量,定规矩,定时间
5.究竟需要什么
每天写日记
6.怎么读懂代码,不被迷惑
举例子,多观察,再思考,再总结,再重复。
7.心理建设
想玩是正常的,但是选择是自己的
快速动手学习是打开学习思路的最好方法
玩人丧德,玩物丧志,固执不变,是为自欺欺人
贪玩并不是你的真正心愿,这是被欺骗无知少年少女的网络剧言情剧误导的,我希望能功成名就,日进斗金,,腰缠万贯,有一个像都教授这样的藏书阁


B.LeetCode
133 clone graph 图的问题可以用DFS/BFS解决,本题用的是BFS ,时空复杂度都不错,但是main函数不好写,这个博客里进行了不完全实现
http://www.bubuko.com/infodetail-3311464.html
137
https://blog.csdn.net/qq_17550379/article/details/83926804
C.POJ
Balanced LineUp
正解:
#include <stdio.h> #include <math.h> #include <string.h> #include <algorithm> using namespace std; int maxnum[50010][20]; int minnum[50010][20]; int main() { int num,n,q,i,j,x,y; while (~scanf("%d%d",&n,&q)) { for (i = 1; i <= n; i ++) { scanf("%d",&num); maxnum[i][0] = minnum[i][0] = num; // 先预处理2^0长度的 } for (j = 1; (1<<j) <= n; j ++) for (i = 1; i+(1<<j)-1 <= n; i ++) // 预处理 { maxnum[i][j] = max(maxnum[i][j-1],maxnum[i + (1<<(j-1))][j-1]); minnum[i][j] = min(minnum[i][j-1],minnum[i + (1<<(j-1))][j-1]); } while (q --) { scanf("%d%d",&x,&y); int z = 0; while ((1<<(z+1)) <= y-x+1) z ++; int ans = max(maxnum[x][z],maxnum[y-(1<<z)+1][z]) - min(minnum[x][z],minnum[y-(1<<z)+1][z]); printf("%d\n",ans); } } return 0; }
O.好网站博客
https://www.jianshu.com/p/77d0dd2fa3ee
https://www.cnblogs.com/carsonzhu/p/5375070.html
I.白板答题经验:
1》括号,分号要提前写好,对称的符号,避免因此遗漏,class定义最后要写冒号
愿为天下目,萃聚六路华
浙公网安备 33010602011771号