跳至内容
CVBB ACM Team
用户工具
注册
登录
站点工具
搜索
工具
显示页面
修订记录
Copy this page
导出 PDF
反向链接
最近更改
媒体管理器
网站地图
注册
登录
>
最近更改
媒体管理器
网站地图
您在这里:
front_page
»
2020-2021
»
teams
»
wangzai_milk
»
weekly
»
poj_1947
2020-2021:teams:wangzai_milk:weekly:poj_1947
本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。
[[http://poj.org/problem?id=1947|POJ 1947]] <code cpp> #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> #include<cstdlib> #define INF 0x3f3f3f3f using namespace std; int n,p,res,head[155],cnt,f[155][155]; struct Node{int nxt,to;}Edges[155*2]; void addedge(int u,int v) { Edges[++cnt].nxt=head[u]; head[u]=cnt,Edges[cnt].to=v; } void dfs(int u) { f[u][1]=0; for(int i=head[u];~i;i=Edges[i].nxt) { int v=Edges[i].to; if(f[v][1]!=INF)continue; dfs(v); for(int j=p;j;j--) { f[u][j]=f[u][j]+1; for(int k=0;k<=j;k++) { f[u][j]=min(f[u][j],f[v][k]+f[u][j-k]); } } } if(u!=1)res=min(res,f[u][p]+1); else res=min(res,f[u][p]); } int main() { while(~scanf("%d%d",&n,&p)) { cnt=0,res=INF; memset(head,-1,sizeof(head)); memset(f,0x3f,sizeof(f)); for(int i=1;i<n;i++) { int u,v; scanf("%d%d",&u,&v); addedge(u,v); } dfs(1); printf("%d\n",res); } return 0; } </code>
2020-2021/teams/wangzai_milk/weekly/poj_1947.txt
· 最后更改: 2020/05/10 01:32 由
zars19
页面工具
显示页面
修订记录
反向链接
Copy this page
导出 PDF
回到顶部