摘要: 题意:一个大学准备举办80周年校庆活动。该校的人事关系是一棵树形结构,父结点是上司,子结点是下属。每个结点都有一个值,限制条件是父子结点不能同时参加校庆活动(即如果父结点参加了那么他的孩子结点就不能参加,如果有一个孩子结点参加,那么父结点就不能参加)。最后求满足限制的情况下,值的和最大的值是多少。f... 阅读全文
posted @ 2015-08-19 20:17 marchlyp 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 题意:假设货架上从左到右摆放了N种商品,并且依次标号为1到N,其中标号为i的商品的价格为Pi。小Hi的每次操作分为两种可能,第一种是修改价格——小Hi给出一段区间[L, R]和一个新的价格NewP,所有标号在这段区间中的商品的价格都变成NewP。第二种操作是询问——小Hi给出一段区间[L, R]... 阅读全文
posted @ 2015-08-19 19:54 marchlyp 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一串包含数字和运算符的字符串,可以在表达式中合理地加上括号,运算符只有:+,-,*。返回所有可能的结果。比如:输入:“2-1-1”可能的情况有:1.((2-1)-1) = 0;2.(2-(1-1))=2 仔细观察可以看出,这个问题可以分成子问题的:对于一个运算符,可以在这个符号两边把字符... 阅读全文
posted @ 2015-08-18 19:21 marchlyp 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 题意:假设整个货架上从左到右摆放了N种商品,并且依次标号为1到N,每次给出一段区间[L, R],要做的是选出标号在这个区间内的所有商品重量最轻的一种,并且告诉这个商品的重量。但是在这个过程中,可能会因为其他人的各种行为,对某些位置上的商品的重量产生改变(如更换了其他种类的商品)。 线段树求区间... 阅读全文
posted @ 2015-08-18 19:02 marchlyp 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 堆是一棵完全二叉树,对于最大堆来说,任何一个非叶子节点满足:结点的值大于其孩子结点的值。使用数组可以实现完全二叉树的结构。下标从1开始,一个结点i的左孩子下标为2*i,有孩子下标为2*i+1。下面是实现一个简单的最大堆。const int maxn = 100000;class MaxHeap{... 阅读全文
posted @ 2015-08-18 18:45 marchlyp 阅读(179) 评论(0) 推荐(0) 编辑
摘要: c++在很多地方都采用了对其分配内存的方式,比如一个类对象数据成员的存放就按照对齐方式存放。对齐有利于存取效率的提高:比如有些平台每次读取数据都是从偶数地址开始,若一个int型存放在偶数地址开始处,则一次读周期就可以读出这个整数,而如果存放在奇数地址处,则需要两个读周期。标准库提供的malloc... 阅读全文
posted @ 2015-07-28 14:12 marchlyp 阅读(1092) 评论(0) 推荐(0) 编辑
摘要: 1.指针和引用最主要的区别应该在于引用是一个变量的别名,不分配内存区域。而指针有内存空间,存储指向对象的地址。要理解这一点可以从编译过程来看:编译成目标文件过程中,把指针和引用添加到符号表中,其中记录变量和变量所对应的地址。指针变量在符号表上对应的地址为指针变量的地址,而引用在符号表上对应的地址为引... 阅读全文
posted @ 2015-07-16 13:15 marchlyp 阅读(194) 评论(0) 推荐(0) 编辑
摘要: SQL代码并不是按照编码顺序进行处理,而是按照如下顺序进行:(8)SELECT (9)DISTINCT(1)FROM (3)JOIN(2)ON(4)WHERE(5)GROUP BY(6)WITH{CUBE|ROLLUP}(7)HAVING(10)ORDER BY(11)LIMIT每个操作都... 阅读全文
posted @ 2015-07-16 10:46 marchlyp 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 1.首先要说明的是一个inline函数具有静态链接(static linkage),不会被文件以外者看到。 2.编译是分模块进行的(不同的编译模块指不同的文件),使用#include把类的头文件包含进来,在预处理阶段会进行文本替换。如果此时在.h文件中定义了类的函数,那么包含了inlcude的... 阅读全文
posted @ 2015-07-13 09:16 marchlyp 阅读(933) 评论(0) 推荐(0) 编辑
摘要: 先看一个例子:Widget类中有个虚函数和一个非虚函数。指针变量pWidget的值是NULL。通过指针调用非虚函数和虚函数。class Widget{public: virtual void virtual_flip(){ cout nonvirtual_flip(); pWidget->vi... 阅读全文
posted @ 2015-07-13 08:49 marchlyp 阅读(271) 评论(0) 推荐(0) 编辑