Submission #1257800


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

#define FOR(i,l,r) for(int i = (int) (l);i < (int) (r);i++)
#define ALL(x) x.begin(),x.end()
template<typename T> bool chmax(T& a,const T& b){ return a < b ? (a = b,true) : false; }
template<typename T> bool chmin(T& a,const T& b){ return b < a ? (a = b,true) : false; }
typedef long long ll;

int N;
vector<int> edge [100001];
int dp [100001];

int dfs(int curr,int prev)
{
	int res = 0;
	vector<int> v;
	bool leaf = true;
	for(const auto& it : edge [curr]) if(it != prev){
		chmax(res,dfs(it,curr));
		v.push_back(dp [it]);
		leaf = false;
	}
	if(leaf) v.push_back(0);
	sort(v.rbegin(),v.rend());
	if(v.size() >= 2){
		chmax(res,v [0] + v [1] + (edge [curr].size() == 2));
		dp [curr] = v [0] + (edge [curr].size() == 2);
	}
	else if(v.size() == 1){
		chmax(res,v [0] + (edge [curr].size() == 2));
		dp [curr] = v [0] + (edge [curr].size() == 2);
	}
	return res;
}

int main()
{
	scanf("%d",&N);
	FOR(i,0,N - 1){
		int u,v;
		scanf("%d%d",&u,&v);
		edge [u].push_back(v);
		edge [v].push_back(u);
	}
	int ans = 0;
	FOR(i,1,N + 1){
		ans += edge [i].size() == 1;
	}
	ans += dfs(1,-1);

	printf("%d\n",ans);

	return 0;
}

Submission Info

Submission Time
Task K - Problem on Tree
User gigime
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1224 Byte
Status AC
Exec Time 47 ms
Memory 6272 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:39:16: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&N);
                ^
./Main.cpp:42:22: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d",&u,&v);
                      ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 43
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
All sample_01.txt, sample_02.txt, sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt, subtask1_32.txt, subtask1_33.txt, subtask1_34.txt, subtask1_35.txt, subtask1_36.txt, subtask1_37.txt, subtask1_38.txt, subtask1_39.txt
Case Name Status Exec Time Memory
sample_01.txt AC 2 ms 2560 KB
sample_02.txt AC 2 ms 2560 KB
subtask1_01.txt AC 38 ms 5632 KB
subtask1_02.txt AC 30 ms 4992 KB
subtask1_03.txt AC 14 ms 3584 KB
subtask1_04.txt AC 17 ms 3840 KB
subtask1_05.txt AC 20 ms 4096 KB
subtask1_06.txt AC 4 ms 2816 KB
subtask1_07.txt AC 45 ms 6144 KB
subtask1_08.txt AC 13 ms 3584 KB
subtask1_09.txt AC 28 ms 4736 KB
subtask1_10.txt AC 36 ms 5376 KB
subtask1_11.txt AC 17 ms 3968 KB
subtask1_12.txt AC 8 ms 3072 KB
subtask1_13.txt AC 5 ms 2816 KB
subtask1_14.txt AC 5 ms 2944 KB
subtask1_15.txt AC 46 ms 6144 KB
subtask1_16.txt AC 46 ms 6144 KB
subtask1_17.txt AC 47 ms 6144 KB
subtask1_18.txt AC 46 ms 6144 KB
subtask1_19.txt AC 45 ms 6144 KB
subtask1_20.txt AC 46 ms 6144 KB
subtask1_21.txt AC 46 ms 6144 KB
subtask1_22.txt AC 45 ms 6144 KB
subtask1_23.txt AC 46 ms 6144 KB
subtask1_24.txt AC 46 ms 6144 KB
subtask1_25.txt AC 46 ms 6144 KB
subtask1_26.txt AC 46 ms 6144 KB
subtask1_27.txt AC 45 ms 6144 KB
subtask1_28.txt AC 46 ms 6144 KB
subtask1_29.txt AC 46 ms 6144 KB
subtask1_30.txt AC 46 ms 6144 KB
subtask1_31.txt AC 46 ms 6272 KB
subtask1_32.txt AC 45 ms 6144 KB
subtask1_33.txt AC 46 ms 6144 KB
subtask1_34.txt AC 46 ms 6144 KB
subtask1_35.txt AC 46 ms 6144 KB
subtask1_36.txt AC 46 ms 6144 KB
subtask1_37.txt AC 47 ms 6144 KB
subtask1_38.txt AC 46 ms 6144 KB
subtask1_39.txt AC 46 ms 6144 KB