1782: [Usaco2010 Feb]slowdown 慢慢游
1782: [Usaco2010 Feb]slowdown 慢慢游
Time Limit: 1 Sec Memory Limit: 64 MB
Submit: 570 Solved: 346
[Submit][Status][Discuss]
Description
Input
Output
Sample Input
1 4
5 4
1 3
2 4
4
2
1
5
3
Sample Output
1
0
2
1
HINT
Source
Gold
题解:其实就是求以1为根节点的树上从树根到某一点的链上比自己权值小的点的个数
这样子经典的问题直接树转数组搞定= =,省选前刷水感觉棒棒哒
1 /************************************************************** 2 Problem: 1782 3 User: HansBug 4 Language: Pascal 5 Result: Accepted 6 Time:576 ms 7 Memory:6972 kb 8 ****************************************************************/ 9 10 type 11 point=^node; 12 node=record 13 g:longint; 14 next:point; 15 end; 16 17 var 18 i,j,k,l,m,n,t:longint; 19 a:array[0..100005] of point; 20 b,c:array[0..100005,1..2] of longint; 21 d,e:array[0..200000] of longint; 22 procedure swap(var x,y:longint); 23 var z:longint; 24 begin 25 z:=x;x:=y;y:=z; 26 end; 27 procedure sort(l,r:longint); 28 var i,j,x,y:longint; 29 begin 30 i:=l;j:=r;x:=c[(l+r) div 2,1]; 31 repeat 32 while c[i,1]<x do inc(i); 33 while c[j,1]>x do dec(j); 34 if i<=j then 35 begin 36 swap(c[i,1],c[j,1]); 37 swap(c[i,2],c[j,2]); 38 inc(i);dec(j); 39 end; 40 until i>j; 41 if i<r then sort(i,r); 42 if l<j then sort(l,j); 43 end; 44 procedure edg(x,y:longint); 45 var p:point; 46 begin 47 new(p);p^.g:=y;p^.next:=a[x];a[x]:=p; 48 end; 49 function sum(x:longint):longint; 50 begin 51 sum:=0; 52 while x>0 do 53 begin 54 inc(sum,d[x]); 55 dec(x,x and (-x)); 56 end; 57 end; 58 procedure add(x,y:longint); 59 begin 60 if x=0 then exit; 61 while x<=n do 62 begin 63 inc(d[x],y); 64 inc(x,x and (-x)); 65 end; 66 end; 67 procedure dfs(y,x:longint); 68 var p:point; 69 begin 70 add(x,1); 71 e[x]:=sum(x-1);p:=a[x]; 72 while p<>nil do 73 begin 74 if p^.g<>y then dfs(x,p^.g); 75 p:=p^.next; 76 end; 77 add(x,-1); 78 end; 79 80 begin 81 readln(n);t:=1; 82 for i:=1 to n-1 do readln(b[i,1],b[i,2]); 83 for i:=1 to n do 84 begin 85 c[i,2]:=i; 86 readln(c[i,1]); 87 end; 88 sort(1,n); 89 for i:=1 to n-1 do 90 begin 91 b[i,1]:=c[b[i,1],2]; 92 b[i,2]:=c[b[i,2],2]; 93 edg(b[i,1],b[i,2]); 94 edg(b[i,2],b[i,1]); 95 end; 96 t:=c[t,2]; 97 fillchar(d,sizeof(d),0); 98 dfs(0,t); 99 for i:=1 to n do writeln(e[i]); 100 readln; 101 end.
转载于:https://www.cnblogs.com/HansBug/p/4431724.html
1782: [Usaco2010 Feb]slowdown 慢慢游相关推荐
- 2015: [Usaco2010 Feb]Chocolate Giving
2015: [Usaco2010 Feb]Chocolate Giving Time Limit: 10 Sec Memory Limit: 162 MB Submit: 269 Solved: ...
- 题目推荐—BZOJ 水题推荐
[bzoj1756]Vijos1083小白逛公园 裸题- -..线段树维护lmax,rmax,max,sum然后搞之.. [Ahoi2008]Meet 紧急集合 求两两点的lca然后会发现必然有两个l ...
- 【美文】接受生活的无力感,才能更好的出发
我们来不及悼念青春便遮掉了眼里的光, 掩埋了胸口的鸟,携着玲珑的心眼匆匆赶路, 生怕一个不小心就追赶不上主流的人生. 我曾经憎恨过一份工作,因为做事永远要快人一步. 五月的时候,我要写下半年的工作计划 ...
- 计算机漫游用户的工作原理,深入理解计算机系统——计算机系统漫游
前言 入坑计算机原理嘛,漫游慢慢游 思维导图 1.1 信息就是位+上下文 什么是位? 一个程序的生命周期是从一个源程序开始的,源程序实际上就是一个有值 0 和 1 组成的 位(比特 序列,8个位 为一 ...
- 《人人都可以创业》连载1:创业很简单,从心开始
谋哥写<人人都可以创业>这本电子书,其实最主要的一个原因是看了秦刚老师的文章,因为他的文章非常注重实战,注重 执行力.如果你有想法,你不去执行就等于空.很多时候,你有好的想法,但是就是前 ...
- 哈·曼丁的故事(二)
那一年,他天天扳着手指头计算时日,算着百鸟朝王的时间. 时间过得飞快,不知不觉已经到了百鸟朝王的日子,老头纳斯尔对他说:"现在我要去接见百鸟,你照我说的去做吧." "好的 ...
- 普吉岛泡酒店浮潜攻略——我住过的普吉岛的8个酒店
Ray的女朋友考了潜水证,Ray还没有浮潜过.他俩定的本期度假主题是潜水,让我推荐. OH~话说,好几年没写过旅游攻略了.于是满口答应,写篇普吉岛的攻略给他. 去过几次马尔代夫,班多士岛.椰子岛.满月 ...
- 海明威的《老人与海》人生感悟
海明威的<老人与海>故事背景是在二十世纪中叶的古巴.主角人物是一位圣地亚哥的老渔夫,配角是一个叫马诺林的小孩.这位风烛残年的渔夫一连八十四天都没有钓到一条鱼,几乎都快饿死了:但他仍然不肯认 ...
- The Old Man and The Sea 老人与海 by Ernest Hemingway 欧内斯特-海明威
The Old Man and The Sea 老人与海 by Ernest Hemingway 欧内斯特-海明威 Part 1 He was an old man who fished alo ...
最新文章
- 2018-2019-2 网络对抗技术 20165320 Exp4 恶意代码分析
- [原] Excel(VBA)中数据的非科学记数法显示
- 聊一聊:请假不想说真实原因,你都怎么跟领导讲?
- asp和php数据库怎么区分,asp与php的数据库有哪些区别
- 用Python实现二叉树的遍历
- ListBox的一个郁闷小问题!
- Docker 的两类存储资源 - 每天5分钟玩转 Docker 容器技术(38)
- 蓝桥杯 PREV-3 历届试题 带分数 Java版
- Xsens MVN Analyze高精度惯性动作捕捉系统Link版
- 分享使用ASO提升App Store排名的技巧,appstore排名优化
- 论文相关-MATHTYPE字体对应
- Spring 定时器时间设置规则
- phpmywind 查询结果生成csv文件并下载到本地
- Javascript 声明时用“var”跟不用var的区别
- amazon账号关联第一步你做好了吗?
- Docker (四) 容器基本命令
- element-ui el-table 表格渲染错位以及高度计算错误问题
- 码绘——动态图形艺术自画像
- 文件上传漏洞靶场upload-labs学习(pass1-pass5)
- 1984年高考数学试题。
热门文章
- Google Drive 被曝0day,可诱骗用户安装恶意软件
- Black Hat USA 2020 大会主议题大盘点(上)
- 《UNIX环境高级编程》笔记--read函数,write函数,lseek函数
- 2018.12.11 区块链论文翻译
- virt-install选项详解
- decide your linux OS is GUI or not
- PHP的HashTable实现
- Cisco ASA ‘LU allocate xlate failed’排错一例
- [翻译]用表单字段加亮的方式为用户提供友好的界面
- c++ ANSI、UNICODE、UTF8互转