10.30 模拟3考试总结

10.30 模拟3考试总结

这次都是板子题.....

银河帝国旅行社

实际上就是树的直径

两边大法师就可以解决了

高中运动会

这个暴力一样可以过....

由数论知识可知k=gcd(an,gcd(an-1,…gcd(a2,a1)))。
这里gcd(p,q)是求p和q的最大公约数,gcd的计算方法是:

  1. 如果p=q,gcd(p,q)=p;
  2. 当p和q都为偶数时,gcd(p,q)=2*gcd(p/2,q/2);
  3. 当p和q都为奇数时,gcd(p,q)=gcd(p-q,q);
  4. 当p为偶数q为奇数时,gcd(p,q)=gcd(p/2,q);
    复杂度为\(O(logp)\),所以这道题目总复杂度为\(O(Nlogp)\)

经济编码

这个考试的时候比较迷....实际上就是可以用优先队列就可以尬算出来

因为根据题意实际上可以知道没有比较单独计算深度,实际上可以直接计算答案

while (q.size() != 1)
	{
		x = q.top(); q.pop();
		y = q.top(); q.pop();
		if (!x.pd) x.b += x.a;
		if (!y.pd) y.b += y.a;
		
		x.b += y.b;
		x.a += y.a;
		x.pd = 0;
		q.push(x);
	}
posted @ 2018-10-31 19:45  Rendex  阅读(120)  评论(0编辑  收藏  举报
Live2D