题解: 将数组分为3部分,左边的A,中间删除B,右边的C, 然后中间删除部分往右移动,左边A增加一个元素,右边C删除一个元素 左边增加一个元素对A,C的影响,右边增加一个元素对A,C的影响想想就清楚了~ 然后树状数组就行了~,也是有2种书写方式。 但是这题神TM的卡时间,别直接memset 代码: ...
分类:
其他好文 时间:
2016-09-25 06:04:31
阅读次数:
124
1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<cstring> 5 #include<algorithm> 6 #define CLR(a,b) memset((a),(b),sizeof(a)) 7 usi ...
分类:
其他好文 时间:
2016-09-24 00:37:08
阅读次数:
175
构造函数中使用memset会剖坏虚表指针1.通过对象调用时,编译器直接生成调用的地址;2.通过指针或者引用调用时,在运行期通过虚表指针查询调用的地址;#include<iostream>
usingnamespacestd;
classA
{
public:
A()
{
memset(this,0,sizeof(*this));
}
virtualvoid..
分类:
其他好文 时间:
2016-09-19 06:48:46
阅读次数:
157
这个主要用于我个人的学习笔记,便于以后查询,顺便分享给大家。 想必在用C的时候难免会与数组,指针,内存这几样东西打交道,先以数组为例,例如有一个数组int a[5] = {1, 2, 3, 4, 5},我们要将数组a里面的数据复制到数组b中,一般刚刚接触C语言的我们会怎么做?我们一般会想到用循环来做 ...
分类:
编程语言 时间:
2016-09-16 21:05:37
阅读次数:
113
问题代码: 程序功能:初始化数组元素为输入值。 输入:-1 0 1 预期输出:-1 -10 01 1 实际输出:-1 -10 016843009 16843009 原因: 很简单,memset是一个字节一个字节设置的,取要赋的值的后8位二进制进行赋值。 1的二进制是(00000000 0000000 ...
分类:
其他好文 时间:
2016-09-13 20:45:50
阅读次数:
239
[2016-09-12] 1.有些东西删了后来又加上别忘了把初始化什么的也加上 2.字符读入输出真的很写进 【2016-08-24】 一些煞笔错误: 1.定义了init()和dp()函数结果每调用 2.数组大小常量用错 。。。 [2016-08-19] memset并不快,大约for循环的一半到2/ ...
分类:
其他好文 时间:
2016-09-12 06:03:01
阅读次数:
170
功 能 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向S的指针。 [编辑本段] 用 法 void *memset(void *s, int ch, unsigned n); [编辑本段] ...
分类:
其他好文 时间:
2016-09-11 18:35:28
阅读次数:
153
题目背景:男女相亲图,n个点m条边,数据范围n<=10000,m<=40000,判断输入的数据是否满足任意一条边的两个端点分别为男和女 分析:简单二分图,选择一个端点开始染色,我的做法是vis[i]=-1然后从i点出发的边的另一个端点都染成vis[j]=1,初始化memset(vis,0,sizeo ...
分类:
其他好文 时间:
2016-09-10 16:07:49
阅读次数:
181
虚树裸题。 23333以后memset千万慎用。 ...
分类:
其他好文 时间:
2016-09-04 22:28:29
阅读次数:
308
1)名称:memset()函数 2)别称:char型初始化函数 3)功能: 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值,块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作 4)用法: void *memset(void *s, char ch, unsig ...
分类:
编程语言 时间:
2016-09-02 06:27:02
阅读次数:
180