"bzoj4596/luoguP4336 [SHOI2016]黑暗前的幻想乡(矩阵树定理,容斥)" "bzoj" "Luogu" 题解时间 看一看数据范围,求生成树个数毫无疑问直接上矩阵树定理。 但是要求每条边都属于不同公司就很难直接实现。 ~~按套路~~上容斥: 如果直接将几个公司的修路列表加进矩 ...
分类:
其他好文 时间:
2020-02-02 19:44:02
阅读次数:
70
前言 冒泡排序是一种通用的算法,凡是通用的,可以理解为效率不高,但是通用。 code 从小到大的排序: 这里面稍微有点难以理解的地方是如何一开始就确认: i arr[j + 1]) { temp = arr[j+1]; arr[j + 1] = arr[j]; arr[j] = temp; hasS ...
分类:
编程语言 时间:
2020-02-02 14:12:34
阅读次数:
96
算法的评估 对于一个问题,经常有多种不同的求解算法,这时候我们就需要一个对算法进行评估的标准,找出最优的方案,评估一个算法有以下几个维度: 正确性:能正确的实现功能,满足问题的需求。 易读性:通常,写出一个利与人类阅读的代码和利于机器阅读的代码一样重要 健壮性:对于预料之外的输入,也能做出合适的处理 ...
分类:
编程语言 时间:
2020-02-02 13:38:38
阅读次数:
151
一、技术总结 1. 这一题是使用了queue队列的知识,但是也是用了很多辅助知识。 2. 最重要的一步是,不断的选择最大的体重,和进而排序。 3. 第一步是创建结构体,里面包含体重weight,现在顺序index,原始顺序index0,rank排名 4. 然后把存储好在vector里的存入queue ...
分类:
其他好文 时间:
2020-02-02 01:48:01
阅读次数:
86
「JSOI2014」序列维护 "传送门" 其实这题就是 "luogu的模板线段树2" ,之所以要发题解就是因为被 $\color{black}{\text{M}} \color{red}{\text{_sea}}$ 告知了一种比较NB的 $\text{update}$ 的方式。 我们可以把修改操作统 ...
分类:
Web程序 时间:
2020-02-01 21:39:02
阅读次数:
84
/* 题目1:找出数组中重复的数字 */ #include<iostream> #include<cstdio> using namespace std; int main() { int n; int arr[100000]={-1}; cin>>n; for(int i=0;i<n;i++) { ...
分类:
编程语言 时间:
2020-02-01 01:01:16
阅读次数:
94
一、技术总结 1. 主要是一个中缀表达式,然后求值,一些加减乘除 2. 第一步是把中缀表达式转化为后缀表达式 3. 然后就是计算后缀表达式,计算出结果 4. 主要是两个函数,一个是转化函数Change()还有一个是计算函数Cal() 二、参考代码: ...
分类:
其他好文 时间:
2020-01-31 23:11:26
阅读次数:
160
面试题51:数组中的逆序对 题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 问题分析 大多数人的第一反应就是顺序扫描整个数组,对每个数字都和后面的数字比较大小,时间复杂度为O(n^2),效率太低。 利用归并排序的 ...
分类:
编程语言 时间:
2020-01-31 20:53:19
阅读次数:
402
今天和大家讲讲,在做算法题时常用的一些技巧。对于平时没用过这些技巧的人,或许你可以考虑试着去看看在实践中能否用的上这些技巧来优化问题的解。 1. 巧用数组下标 数组的下标是一个隐含的很有用的数组,特别是在统计一些数字,或者判断一些整型数是否出现过的时候。例如,给你一串字母,让你判断这些字母出现的次数 ...
分类:
编程语言 时间:
2020-01-31 18:48:19
阅读次数:
72
LED闪烁 延时(至少20ms以上) 源代码 #include <reg52.h> unsigned int i;//0~65535 void main() //main函数自身会循环 { while(1) { P1 = 0; //点亮P1口8个LED灯 i = 65535; while(i--); ...
分类:
其他好文 时间:
2020-01-31 15:57:58
阅读次数:
130