提交记录 9963


用户 题目 状态 得分 用时 内存 语言 代码长度
Wallbreaker5th noip18c. 【NOIP2018】赛道修建 Accepted 100 173.087 ms 6096 KB C++ 1.44 KB
提交时间 评测时间
2019-07-31 17:04:45 2020-08-01 01:59:41
#include<bits/stdc++.h>
using namespace std;
int getint(){
	int ans=0,f=1;
	char c=getchar();
	while(c>'9'||c<'0'){
		if(c=='-')f=-1;
		c=getchar();
	}
	while(c>='0'&&c<='9'){
		ans=ans*10+c-'0';
		c=getchar();
	}
	return ans*f;
}
const int N=100010,M=N<<1;

struct bian{
	int l,e,n;
};
bian b[M];
int s[N],tot=0;
void add(int x,int y,int z){
	tot++;
	b[tot].l=z;
	b[tot].e=y;
	b[tot].n=s[x];
	s[x]=tot;
}

long long maxson[N];
int cnt=0,mid=0;
multiset<long long> sons;
void ss(int x,int fa){
	//cout<<">>>"<<x<<endl;
	for(int i=s[x];i;i=b[i].n){
		if(b[i].e==fa)continue;
		ss(b[i].e,x);
	}
	sons.clear();
	for(int i=s[x];i;i=b[i].n){
		if(b[i].e==fa)continue;
		sons.insert(maxson[b[i].e]+b[i].l);
	}
	multiset<long long>::reverse_iterator it=sons.rbegin();
	while(sons.size()){
		if(*it>=mid){
			cnt++;
			sons.erase(sons.find(*it));
		}else break;
	}
	while(sons.size()){
		int t=*sons.begin();
		sons.erase(sons.begin());
		multiset<long long>::iterator itt=sons.lower_bound(mid-t);
		if(itt==sons.end())maxson[x]=t;
		else cnt++,sons.erase(itt);
	}
	//cout<<">> "<<x<<" "<<maxson[x]<<endl;
}
int main(){
	int n=getint(),m=getint();
	long long sum=0;
	for(int i=0;i<n-1;i++){
		int x=getint(),y=getint(),z=getint();
		add(x,y,z);
		add(y,x,z);
		sum+=z;
	}
	long long l=0,r=sum/m+1;
	while(l<r){
		mid=(l+r+1)>>1;
		cnt=0;
		memset(maxson,0,sizeof(maxson));
		ss(2,0);
		if(cnt>=m)l=mid;
		else r=mid-1;
		//cout<<"---"<<mid<<"---"<<endl;
	}
	cout<<l;
	return 0;
}

CompilationN/AN/ACompile OKScore: N/A

Testcase #1330.72 us824 KBAcceptedScore: 5

Testcase #2306.66 us824 KBAcceptedScore: 5

Testcase #3313.9 us824 KBAcceptedScore: 5

Testcase #41.373 ms860 KBAcceptedScore: 5

Testcase #5173.087 ms2 MB + 1004 KBAcceptedScore: 5

Testcase #698.752 ms2 MB + 456 KBAcceptedScore: 5

Testcase #792.249 ms2 MB + 1004 KBAcceptedScore: 5

Testcase #8166.183 ms4 MB + 440 KBAcceptedScore: 5

Testcase #9919.03 us928 KBAcceptedScore: 5

Testcase #1022.916 ms3 MB + 912 KBAcceptedScore: 5

Testcase #1140.359 ms5 MB + 976 KBAcceptedScore: 5

Testcase #12336.87 us824 KBAcceptedScore: 5

Testcase #13338.98 us824 KBAcceptedScore: 5

Testcase #14447.35 us828 KBAcceptedScore: 5

Testcase #15426.67 us832 KBAcceptedScore: 5

Testcase #16965.09 us860 KBAcceptedScore: 5

Testcase #171.153 ms864 KBAcceptedScore: 5

Testcase #1833.527 ms1 MB + 672 KBAcceptedScore: 5

Testcase #1947.213 ms2 MB + 412 KBAcceptedScore: 5

Testcase #2084.906 ms3 MB + 336 KBAcceptedScore: 5


Judge Duck Online | 评测鸭在线
Server Time: 2026-03-30 10:18:44 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠