A - Lake Counting

POJ - 2386

最最最最最基础的dfs 挂这道题为了提高AC率(糖水不等式

B - Paint it really, really dark gray

CodeForces - 717E

dfs 待会写题解

C - New Year Transportation

CodeForces - 500A

简单的模拟

D - Binary Tree Traversals

HDU - 1710

给树的先序中序输出后序

贴下代码

#include <algorithm>
#include <cstdio>
#include <stack>
using namespace std;
const int maxn = 1e3 + ;
int preorder[maxn], inorder[maxn];
stack<int> st;
int n; void build(int l1, int r1, int l2, int r2) {
int i, j;
st.push(preorder[l1]);
for (i = l2; i <= r2; i++)
if (inorder[i] == preorder[l1]) break;
j = l1 + (i - l2 + );
if (j <= r1 && i + <= r2) build(j, r1, i + , r2);
if (l1 + <= j - && l2 <= i - ) build(l1 + ,j - , l2, i - );
}
int main() {
while (~scanf("%d", &n)) {
for (int i = ; i < n; i++) scanf("%d", &preorder[i]);
for (int i = ; i < n; i++) scanf("%d", &inorder[i]);
build(, n-, , n-);
while (!st.empty()) {
printf("%d", st.top());
st.pop();
if (!st.empty())putchar(' ');
}
puts("");
}
return ;
}

E - Til the Cows Come Home

POJ - 2387

裸最短路dijkstra

最短路+限制条件 进行n次dijkstra 每次把当前的level[i]设为最小的

毕竟每次最短路肯定有个最小的

G - 畅通工程

HDU - 1232

基础并查集

H - 还是畅通工程

HDU - 1233

基础最小生成树

I - Vasya and a Tree

CodeForces - 1076E

线段树+dfs 似乎好像是主席树吗(反正我不会

待会写发题解

J - Military Problem

CodeForces - 1006E

dfs序 写题解

K - Cut 'em all!

CodeForces - 982C

贪心+dfs 写题解

L - Install Air Conditioning

HDU - 4756

最小生成树+树形dp 写题解

M - Qin Shi Huang's National Road System

HDU - 4081

最小生成树+树形dp 写题解

N - Conscription

POJ - 3723

最小生成树 写题解

O - Cow Contest

POJ - 3660

floyd传递闭包 写题解

一场contest下来要写8个题解wsl

树&图 记录的更多相关文章

  1. k路归并(败者树,记录败者)

          败者树在外排序中用到,每加入一个数字时,调整树需要o(lgk),比较快.外排序过程主要分为两个阶段:(1)初始化各归并段写入硬盘,初识化的方法,可利用内排序方法还可以一种叫置换选择排序的方 ...

  2. DS树+图综合练习--二叉树之最大路径

    题目描述 给定一颗二叉树的逻辑结构(先序遍历的结果,空树用字符‘0’表示,例如AB0C00D00),建立该二叉树的二叉链式存储结构 二叉树的每个结点都有一个权值,从根结点到每个叶子结点将形成一条路径, ...

  3. DS树+图综合练习--带权路径和

    题目描述 计算一棵二叉树的带权路径总和,即求赫夫曼树的带权路径和. 已知一棵二叉树的叶子权值,该二叉树的带权案路径和APL等于叶子权值乘于根节点到叶子的分支数,然后求总和.如下图中,叶子都用大写字母表 ...

  4. POJ2513(字典树+图的连通性判断)

    //用map映射TLE,字典树就AC了#include"cstdio" #include"set" using namespace std; ; ;//26个小 ...

  5. [vue折线图] 记录SpringBoot+Vue3.0折线图订单信息展示

    因公司业务需求,需要做一份订单相关的折线图, 如果其中有一天没有订单的话,这一天就是空缺的,在绘制折线图的时候是不允许的,所有要求把没有订单数据的日期也要在图表显示. 使用技术vue3.0+sprin ...

  6. DS树+图综合练习--构建邻接表

    题目描述 已知一有向图,构建该图对应的邻接表.邻接表包含数组和单链表两种数据结构,其中每个数组元素也是单链表的头结点,数组元素包含两个属性,属性一是顶点编号info,属性二是指针域next指向与它相连 ...

  7. cf 1051F 树+图

    $des$给定一张 $n$ 个点 $m$ 条边的带权无向联通图,$q$ 次询问,每次询问 $u_i$ 到 $v_i$ 的最短路长度.$n,q <= 10^5, m - n <= 20$ $ ...

  8. AVL树实现记录

    https://github.com/xieqing/avl-tree An AVL Tree Implementation In C There are several choices when i ...

  9. CF1007D. Ants(树链剖分+线段树+2-SAT及前缀优化建图)

    题目链接 https://codeforces.com/problemset/problem/1007/D 题解 其实这道题本身还是挺简单的,这里只是记录一下 2-SAT 的前缀优化建图的相关内容. ...

随机推荐

  1. Linux内核入门到放弃-进程虚拟内存-《深入Linux内核架构》笔记

    进程地址空间的布局 <mm_types.h> <mm_types.h> struct mm_struct { ... unsigned long (*get_unmapped_ ...

  2. WPF效果(GIS二维篇)

    距离上次发东西已经过去了貌似不知多少天了,突然发现自己懒得总结了.这毛病感觉不好,还得写点东西来充实一下自己,不然这样整天浑浑噩噩的过日子,也太平淡了,不管怎么说,起码得给自己的经历留下点东西吧.闲话 ...

  3. 缓存子系统如何设计(Cachable tag, Memcache/redis support, xml config support, LRU/LFU/本地缓存命中率)

    大家对这段代码肯定很熟悉吧: public List<UserInfo> SearchUsers(string userName) { string cacheKey=string.For ...

  4. Linux 的系统目录介绍

    /bin 二进制可执行命令 /dev 设备特殊文件/etc 系统管理和配置文件/etc/rc.d 启动的配置文件和脚本/home 用户主目录的基点,比如用户user的主目录就是/home/user,可 ...

  5. python线程中的全局变量与局部变量

    在python多线程开发中,全局变量是多个线程共享的数据,局部变量是各自线程的,非共享的. 如下几种写法都是可以的: 第一种:将列表当成参数传递给线程 from threading import Th ...

  6. Python-认识正则表达式-53

    # 计算器# re模块# 正则表达式 —— 字符串匹配的# 学习正则表达式# 学习使用re模块来操作正则表达式 #判断手机号是否符合要求 while True: phone_number = inpu ...

  7. Python_生成器函数进阶_39

    def generator(): print(123) content = yield 1 #content接收的是send传的值 print('=======',content) print(456 ...

  8. hibernate操纵数据库常用方法 及 hibernate对象的三种状态

    在dao层使用hibernate语言来与数据库进行访问,hibernate作为面向对象思想开发的dao层框架其理解也需要以面向对象的思想来看待 使用.hibernate不仅支持使用者使用他提供的对象来 ...

  9. JS 有趣的JS

    一. var arr = []; for (var i = 0; i < 3; i++) { arr[i] = function() { console.log(i+'__') // 3 3 3 ...

  10. yield from

    一.yield 关于yield详细可参考我这篇文章 下面是一个带yield的生成器: def gen_yield(): while True: recv = yield do something wi ...