QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#780221#2596. Even ForestniumachaorenWA 179ms96932kbC++141.0kb2024-11-25 08:53:062024-11-25 08:53:06

Judging History

你现在查看的是最新测评结果

  • [2024-11-25 08:53:06]
  • 评测
  • 测评结果:WA
  • 用时:179ms
  • 内存:96932kb
  • [2024-11-25 08:53:06]
  • 提交

answer

#include<bits/stdc++.h>
inline void read(int &x){
	x=0;char ch=getchar();
	while(!isdigit(ch))ch=getchar();
	while(isdigit(ch)){
		x=(x<<1)+(x<<3)+(ch^48);
		ch=getchar();
	}
}
using namespace std;
const int maxn=1e6+10;
int n,rt,dep[maxn],dp[maxn][2];
vector<int>e[maxn<<1];
void dfs(int u,int fa){
	dep[u]=dep[fa]+1;
	int siz=0;
	for(int v:e[u]){
		if(v==fa)continue;
		siz++;
		dfs(v,u);
		dp[u][0]+=min(dp[v][0],dp[v][1]+1);
		dp[u][1]+=min(dp[v][1],dp[v][0]+1);
	}
	if(!siz){
		dp[u][dep[u]&1]=1;
	}
}
int main(){
	srand((unsigned)time(NULL));
	read(n);
	for(int i=1;i<n;i++){
		int u,v;
		read(u),read(v);
		e[u].push_back(v),e[v].push_back(u);
	}
	int cnt=0;
	for(int i=1;i<=n;i++){
		if(e[i].size()==1)cnt++;
	}
	if(cnt==2){
		cout<<((n&1)^1)<<'\n';
		return 0;
	}
	rt=rand()%n+1;
	dfs(rt,0);
	int ans=min(dp[rt][0],dp[rt][1]);
	memset(dp,0,sizeof(dp));
	memset(dep,0,sizeof(dep));
	rt=rand()%n+1;
	dfs(rt,0);
	ans=max(ans,min(dp[rt][0],dp[rt][1]));
	cout<<ans<<'\n';
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 50588kb

input:

4
1 2
2 3
3 4

output:

1

result:

ok 1 number(s): "1"

Test #2:

score: 0
Accepted
time: 4ms
memory: 62404kb

input:

4
1 2
1 3
1 4

output:

0

result:

ok 1 number(s): "0"

Test #3:

score: 0
Accepted
time: 14ms
memory: 62260kb

input:

6
1 2
2 3
4 2
4 5
6 4

output:

1

result:

ok 1 number(s): "1"

Test #4:

score: 0
Accepted
time: 8ms
memory: 62388kb

input:

1

output:

0

result:

ok 1 number(s): "0"

Test #5:

score: 0
Accepted
time: 4ms
memory: 50920kb

input:

2
1 2

output:

1

result:

ok 1 number(s): "1"

Test #6:

score: 0
Accepted
time: 0ms
memory: 50652kb

input:

3
2 3
3 1

output:

0

result:

ok 1 number(s): "0"

Test #7:

score: 0
Accepted
time: 4ms
memory: 62340kb

input:

4
2 3
3 1
3 4

output:

0

result:

ok 1 number(s): "0"

Test #8:

score: 0
Accepted
time: 6ms
memory: 50644kb

input:

5
4 2
2 3
4 1
5 3

output:

0

result:

ok 1 number(s): "0"

Test #9:

score: 0
Accepted
time: 0ms
memory: 62280kb

input:

6
4 3
1 4
2 4
5 2
4 6

output:

1

result:

ok 1 number(s): "1"

Test #10:

score: 0
Accepted
time: 7ms
memory: 62344kb

input:

50
21 22
22 27
22 7
22 12
22 13
43 22
36 22
35 22
6 22
10 22
22 38
19 22
34 22
8 22
22 44
22 3
9 22
22 16
23 22
18 22
22 25
22 5
22 2
22 15
46 22
37 22
48 22
33 22
22 17
31 22
22 29
22 28
22 49
4 22
22 26
41 22
22 32
22 50
22 20
22 30
24 22
40 22
22 45
14 22
22 11
42 22
39 22
1 22
47 22

output:

0

result:

ok 1 number(s): "0"

Test #11:

score: 0
Accepted
time: 179ms
memory: 96932kb

input:

1000000
851841 325834
455962 325834
135775 325834
525341 325834
265267 325834
868520 325834
834325 325834
867971 325834
325834 879726
325834 242607
325834 106951
122113 325834
325834 499633
727580 325834
325834 200171
325834 178877
325834 493841
957118 325834
325834 809324
325834 641895
325834 33338...

output:

0

result:

ok 1 number(s): "0"

Test #12:

score: 0
Accepted
time: 4ms
memory: 51764kb

input:

3
2 1
2 3

output:

0

result:

ok 1 number(s): "0"

Test #13:

score: 0
Accepted
time: 7ms
memory: 50944kb

input:

4
4 3
1 4
1 2

output:

1

result:

ok 1 number(s): "1"

Test #14:

score: 0
Accepted
time: 4ms
memory: 51404kb

input:

5
1 4
2 4
3 2
3 5

output:

0

result:

ok 1 number(s): "0"

Test #15:

score: 0
Accepted
time: 3ms
memory: 50628kb

input:

6
3 5
3 6
1 6
1 4
4 2

output:

1

result:

ok 1 number(s): "1"

Test #16:

score: 0
Accepted
time: 10ms
memory: 50676kb

input:

7
1 2
3 2
6 3
6 7
7 4
4 5

output:

0

result:

ok 1 number(s): "0"

Test #17:

score: 0
Accepted
time: 13ms
memory: 50500kb

input:

8
6 2
1 2
8 1
5 8
5 7
7 3
4 3

output:

1

result:

ok 1 number(s): "1"

Test #18:

score: 0
Accepted
time: 8ms
memory: 50544kb

input:

20
6 1
6 15
9 15
18 9
18 17
17 7
8 7
3 8
19 3
2 19
13 2
13 11
12 11
12 14
4 14
4 5
20 5
16 20
16 10

output:

1

result:

ok 1 number(s): "1"

Test #19:

score: 0
Accepted
time: 4ms
memory: 50672kb

input:

42
33 30
17 33
17 7
29 7
15 29
15 23
23 1
10 1
10 31
4 31
12 4
12 34
28 34
28 41
41 11
32 11
32 24
13 24
13 19
26 19
16 26
35 16
35 27
37 27
37 3
3 20
8 20
39 8
6 39
6 42
14 42
14 38
38 9
25 9
18 25
18 5
36 5
36 40
40 21
21 2
22 2

output:

1

result:

ok 1 number(s): "1"

Test #20:

score: -100
Wrong Answer
time: 3ms
memory: 62256kb

input:

27
19 14
6 19
16 19
19 7
19 4
21 19
26 4
26 15
4 5
5 1
10 26
13 26
17 7
3 4
23 13
21 25
2 25
2 12
10 9
20 17
24 16
21 27
22 13
8 16
18 7
11 24

output:

5

result:

wrong answer 1st numbers differ - expected: '6', found: '5'