C3863 不可指定数组类型“int [510]” undefinedundefined 原因是我定义了一个二维数组 int e[510][510]; 而在使用fill对数组初始化时,并没有采用二维数组初始化的方式,而是写成了: fill(e, e + 510 * 510, inf); 正确写法应该是: fill(e[0], e[0] + 510 * 510, inf);...
一个int数组, 比如 array[],里面数据无任何限制,要求求出所有这样的数array[i],其左边的数都小于等于它,右边的数都大于等于它。能否只用一个额外数组和少量其它空间实现。 分析: 这题很直观的一个算法是,挨个的查找各个元素是否满足条件,算法的复杂度是O(n^2),太过复杂。 但如果我们在从左到右扫描数组的时...