回归
一年多了距离上次我的博客更新已经一年多了了呀,我也是把我这域名续上把我的博客复活了。折腾了几个小时,可算能跑了,但还是提示不安全,我也不想管了,先凑合的用吧。
高考已经结束了一个多礼拜了,我好像也缓过来了。先去广州考了一个失败的考试,玩了几天就跑回家歇着了。有点累了,在家躺了好几天之后,准备开始学一点东西了。
先学数学分析吧,接下来我应该重心会放在数学和物理 上面,计算机算法之类的会先放在一边。
卓里奇真带劲。
缅怀Pascal
文艺复兴CCF在去年正式把pascal在高中竞赛中踩在脚底,那我就偏要玩玩这个语言。
现在,在网上,关于Pascal的讨论已经可以说只剩断壁残垣了。(我甚至能找到比我还大的帖子(悲)) 不是很容易找到那种系统又准确的教程了。我就到处整理学习了一下,并把他分享出来。
我也是初学这门语言,如果有些点不准确感谢纠正:)
语言细节一篇文章大概是讲不完的,那我就讲讲简单的语法吧。
基本程序结构12345678program {程序名字}.....{可以有一大堆不重要的声明}begin......{主要执行这里面的代码}end.
begin前面的声明,如果用不上,都可以省略。program这一句也行。
注意,Pascal不区分大小写(字符串除外)。
注释Pascal 中注释使用大括号括起。1234567{单行注释}{*多 注行 释*}
输入输出语句输出:一般使用 write 输出123write('Hello!'); {输出}writeln( ...
again
667af6f845cbba6975f9a13ccf0774e595d06380fa37a732f844b3230a2e5e2b5740313f4ba5e62d35e5eff91a52d48706391b0c3ec8c795b29222cfd9663e6a5386bad1c0c3d6d468b622430df1a07ef7e75d07505b3f1975a93670b48a7e305577c64ef401a6d6eb2cd613b0be8b9fbe7a8aa2c559842b42f153dc1fe0e2a9ba2d55784e05db635ab0221deedfd22c5a938836a5b7b492a786d2fe77ef79cfe0ace67cb9601609457315dfabd0f0bb2e392b792f25e32ced153b35bddfaf8cee4b26a0ca77b368b12177743aad74592ba1c3a9511af4683128b8620a3b3d4acd2e8815788ba430aa72ec03de70e7b8c1438b9574c285286 ...
yyy的码风标准
yyy的码风标准为什么会有这种文章。因为改码风好累。就定一个标准吧,以后不乱改了
不用iostream!!速度至上
不用using namespace std;,我觉得::很有C++的感觉
下标从1开始,方便数学表示;如用stl则从0(begin())开始
区间左闭右闭,如有stl则左闭右开
就这四项基本(抖机灵)标准吧。
还是随缘吧
C++语法易混点(const修饰符,引用)
C++语法易混点(const修饰符,引用)来讲讲C++中几个易混的点:const修饰符到底怎么用,引用&的使用
const修饰符声明常量在C语言里我们曾经常使用#define预处理命令声明常量,在C++我们被建议使用const修饰符。如:12const int N = 114514;const double pi = 3.142 这样我们就可以声明常量了,如果我们尝试修改就会报错。
修饰指针这就是一个很多人经常搞不明白的一个点了,const修饰的指针有两种,如下:(x为已声明的变量)12const int* p1 = &x;int* const p2 = &x;const放int前面,为 “指向const的指针” ,但是他是可以指向非const变量的,只是我们不能通过该指针去修改变量的值,如`p1 = 3这种操作就会报错。不过可以修改指针的值。如p1 = &y`是被允许的。
const放int后面,为 “const指针” , 说明这个指针的值是不能被修改的,即所指的地址是不能被修改的。(一生独一)。但我们可以通过该指针修改变量的值,如`p1 = 3是被允 ...
LIS LCS 以及相应DP模型的拓展 (一)
LIS LCS 以及相应DP模型的拓展 (一)本来只是想写一篇题解,但总喜欢扯得太远,那干脆定一个大点的题把这些都包括进来吧。可能废话比较多,但有时间还是看看吧,说不定能有什么新思考本文主要讲讲最长递增子序列(LIS),最长公共子序列(LCS)以及一些拓展dp问题。当然这些问题有的不止有dp解法。
最长递增子序列
给定一个数列 $a_i$,求他们的最长严格递增子序列。可见HDOJ-1257
LIS的求法当让我们也可以不求严格递增只求递增,递减也行,主要思想是一样的。这里再给出两个概念
子序列:把一个序列 $a_i$ 删除某些元素得到的序列 $b_j$,称 $b_j$ 为 $a_i$ 的子序列
注意把子序列和子串的概念区分开,子串是连续的,子序列可以不连续。但他们的相对位置都没有发生变化,序列 $a_i$ 中 $m$ 在 $n$ 的后面,子序列和子串中还是 $m$ 在 $n$ 的后面。
严格递增序列:一个序列 $a_n$,对于任意的 $1 \leq i < j \leq n$,都有 $a_i < a_j$
通俗的讲就是一个序列,后面的数都要比前面的数大,注意严格是 ...