nowcoder 牛客練習賽9 B
題目描述
珂朵莉給你一個有根樹,求有多少個子樹滿足其內部節點編號在值域上連續
一些數在值域上連續的意思即其在值域上構成一個連續的區間
輸入描述:
第一行有一個整數n,表示樹的節點數。 接下來n–1行,每行兩個整數x,y,表示存在一條從x到y的有向邊。 輸入保證是一棵有根樹。
輸出描述:
輸出一個數表示答案
示例1
輸入
5 2 3 2 1 2 4 4 5
輸出
5
說明
節點1子樹中編號為1,值域連續 節點3子樹中編號為3,值域連續 節點5子樹中編號為5,值域連續 節點4子樹中編號為4,5,值域連續 節點2子樹中編號為1,2,3,4,5,值域連續
備註:
對於100%的資料,有n <=100000
找到相應節點的最大最小值 和 節點總個數 xjb 搜一下 wa 了一次 陣列開小了
#include<bits/stdc++.h>
using namespace std;
struct ac{
int mi,mx,sum;
ac(){
mi=999999;
mx=0;
sum=1;
}
}a[1000001];
int ans=0;
vector<int>q[100000];
void DFS(int x){
// cout<<"1"<<endl;
if(q[x].size()==0){
// a[x].sum=1;
a[x].mi=x;
a[x].mx=x;
ans++;
return ;
}
//cout<<q[x].size()<<endl;
for(int j=0;j<q[x].size();j++){
// cout<<q[x][j]<<endl;
DFS(q[x][j]);
a[x].sum+=a[q[x][j]].sum;
a[x].mx=max(a[x].mx,a[q[x][j]].mx);
a[x].mi=min(a[x].mi,a[q[x][j]].mi);
//cout<<a[q[x][j]].sum<<" "<<q[x][j]<<" "<<ans<<endl;
/* if(a[x].sum==a[x].mx-a[x].mi){
ans++;
//cout<<ans<<endl;
}*/
//cout<<a[q[x][j]].sum<<" "<<q[x][j]<<" "<<ans<<endl;
}
if(a[x].sum==a[x].mx-a[x].mi+1){
ans++;
//cout<<ans<<endl;
}
//cout<<a[x].mi<<" "<<a[x].mx<<" "<<a[x].sum<<endl;
}
int main(){
int n;
cin>>n;
int k=0;
for(int j=0;j<n-1;j++){
int x,y;
cin>>x>>y;
if(j==0) k=x;
q[x].push_back(y);
a[x].mi=x;
a[x].mx=x;
a[y].mi=y;
a[y].mx=y;
// cout<<q[x][0]<<endl;
}
// cout<<k<<endl;
DFS(k);
cout<<ans<<endl;
return 0;
}
相關文章
- 牛客練習賽40 B 小A與任務(貪心)
- Mysql 練習(牛客網)MySql
- 牛客SQL練習第21題SQL
- 牛客周賽 Round 36 (小白練習記)
- 牛客練習賽74 E CCA的期望(算概率的技巧+floyd處理)
- 牛客小白月賽89
- 牛客小白月賽88
- 數理統計筆記[牛客專項練習]筆記
- 牛客挑戰賽72 總結
- 牛客小白月賽88 (小白來了)
- 牛客挑戰賽23-A.字串(尺取)字串
- 牛客小白月賽88-DE題解
- 牛客小白月賽88 出題覆盤
- 2020牛客NOIP賽前訓練營-普及組第一場牛牛的跳跳棋題解
- 牛客程式設計巔峰賽S2第11場程式設計
- 【Contest】Nowcoder 假日團隊賽1 題解+賽後總結
- 0二叉樹簡單 牛客NC9.二叉樹
- 【JavaScript】牛客程式設計練習:找出元素 item 在給定陣列 arr 中的位置JavaScript程式設計陣列
- [程式設計題]從尾到頭列印連結串列 牛客網練習 java遞迴程式設計Java遞迴
- 2020/12/9 棧佇列堆(牛客網)佇列
- 挑選方案問題(牛客競賽 思維題+推導公式)公式
- 團體程式設計天梯賽-練習集程式設計
- 疾病預測和天氣分析練習賽
- 牛客周賽 Round 38
- 牛客周賽 Round 40
- 9道python基礎練習題Python
- 牛客網暑期ACM多校訓練營(第三場)C Shuffle Cards(splay)ACM
- 4.17訓練賽
- 牛客 tokitsukaze and Soldier 貪心
- 牛客錯題集(Java)Java
- 旅遊極客開發大賽9月阿里總部舉辦阿里
- nowcoder 五 C
- 牛客網Java評估題Java
- 牛客競賽,GDDU第十屆文遠知行杯新生程式設計競賽,摸魚記(BDEIKL題解,補G,ACFHJ)程式設計
- 極客大學java進階訓練營學習分享Java
- oracle 客戶培訓上機操作練習題目Oracle
- Python 語言及其應用 3.8 練習 (8) (9)Python
- nowcoder 道路建設