本文主要是介绍hdu 4358 Boring counting(树型结构转线型结构,线段树),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题意:给你一棵树,树上的每个节点都有树值,给m个查询,问以每个点u为根的子树下有多少种权值恰好出现k次。
方法跟 Codeforces Round #136 (Div. 2) D. Little Elephant and Array很类似,只不过要将树型结构转化成线型结构。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <vector>
#include <map>
#include <algorithm>
using namespace std;
#define LL(x) (x<<1)
#define RR(x) (x<<1|1)
const int N=1e5+5;
struct Query
{int st,ed,id;Query(){}Query(int a,int b,int c){st=a;ed=b;id=c;}bool operator &l
这篇关于hdu 4358 Boring counting(树型结构转线型结构,线段树)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!