HDU 4707 Pet && 2013 ACM/ICPC Asia Regional Online —— Warmup
제목: n 개의 점 과 거 리 를 정 합 니 다 dis
아래 는 나무 다.
0 시 거리 구하 기 > dis 점 은 몇 개 있 습 니까?
spfa 물 건 너
#include <iostream>
#include <string>
#include <cstring>
#include <algorithm>
#include <cstdio>
#include <cctype>
#include <queue>
#include <stdlib.h>
#include <cstdlib>
#include <math.h>
#include <set>
#include <vector>
#define inf 107374182
#define N 100001
#define im -1000000
#define ll int
using namespace std;
inline ll Max(ll a,ll b){return a>b?a:b;}
inline ll Min(ll a,ll b){return a<b?a:b;}
int d[N];
bool inq[N];
int n,m;
vector<int>G[N];
void spfa(){
memset(inq,0,sizeof(inq));
int i,u,v,len;
for(i=0;i<n;i++)d[i]=inf;
d[0]=0;
queue<int>q; while(!q.empty())q.pop();
q.push(0); inq[0]=true;
while(!q.empty()){
u=q.front() ; q.pop();
len=G[u].size();
for(i=0;i<len;i++){
v=G[u][i];
if(!inq[v]){
d[v]=d[u]+1;
inq[v]=true;
q.push(v);
}
}
}
}
int main()
{
int T,i,u,v,DIS;scanf("%d",&T);
while(T--){
scanf("%d %d",&n,&DIS);
for(i=0;i<n;i++)G[i].clear();
for(i=1;i<n;i++)
{
scanf("%d%d",&u,&v);
G[u].push_back(v);
G[v].push_back(u);
}
spfa();
int ans=0;
for(i=0;i<n;i++)if(d[i]>DIS)ans++;
printf("%d
",ans);
}
return 0;
}
/*
1
10 2
0 1
0 2
0 3
1 4
1 5
2 6
3 7
4 8
6 9
*/
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.