当前位置: 首页 > news >正文

金昌市建设局网站/电话营销

金昌市建设局网站,电话营销,做网站湘潭,网站服务器怎么进题目描述 每年&#xff0c;在威斯康星州&#xff0c;奶牛们都会穿上衣服&#xff0c;收集农夫约翰在N(1<N<100&#xff0c;000)个牛棚隔间中留下的糖果&#xff0c;以此来庆祝美国秋天的万圣节。 由于牛棚不太大&#xff0c;FJ通过指定奶牛必须遵循的穿越路线来确保奶牛的…

  

题目描述

每年,在威斯康星州,奶牛们都会穿上衣服,收集农夫约翰在N(1<=N<=100,000)个牛棚隔间中留下的糖果,以此来庆祝美国秋天的万圣节。

由于牛棚不太大,FJ通过指定奶牛必须遵循的穿越路线来确保奶牛的乐趣。为了实现这个让奶牛在牛棚里来回穿梭的方案,FJ在第i号隔间上张贴了一个“下一个隔间”Next_i(1<=Next_i<=N),告诉奶牛要去的下一个隔间;这样,为了收集它们的糖果,奶牛就会在牛棚里来回穿梭了。

FJ命令奶牛i应该从i号隔间开始收集糖果。如果一只奶牛回到某一个她已经去过的隔间,她就会停止收集糖果。

在被迫停止收集糖果之前,计算一下每头奶牛要前往的隔间数(包含起点)。

输入格式

第1行 整数n。

第2行到n+1行 每行包含一个整数 next_i 。

输出格式

n行,第i行包含一个整数,表示第i只奶牛要前往的隔间数。

 

记忆化搜索好题!!!!!!

 

思路: 递归更新dis数组 表示距离结束的距离

两个记忆化递归  wa了好多小细节

#include<bits/stdc++.h>
using namespace std;
//input by bxd
#define rep(i,a,b) for(int i=(a);i<=(b);i++)
#define repp(i,a,b) for(int i=(a);i>=(b);--i)
#define RI(n) scanf("%d",&(n))
#define RII(n,m) scanf("%d%d",&n,&m)
#define RIII(n,m,k) scanf("%d%d%d",&n,&m,&k)
#define RS(s) scanf("%s",s);
#define ll long long
#define REP(i,N)  for(int i=0;i<(N);i++)
#define CLR(A,v)  memset(A,v,sizeof A)
#define inf 0x3f3f3f3f
//
const int N=100000+5;
int n;
int mp[N];
int vis[N];
int in[N];
int dis[N];
int dfs1(int x,int cnt)
{dis[x]=cnt;if(dis[ mp[x] ]){return cnt;}else return dis[x]=dfs1(mp[x],cnt+1);
}
void del(int x)
{vis[x]=1;if(--in[mp[x]]==0)del(mp[x]);
}
int dfs(int x)
{if(dis[ x ])return dis[x];else return dis[x]=dfs(mp[x])+1;
}
int main()
{RI(n);rep(i,1,n)RI(mp[i]),in[mp[i]]++;rep(i,1,n)if(!in[i]&&!vis[i])del(i);rep(i,1,n)if(!dis[i]&&in[i])dfs1(i,1);rep(i,1,n){if(dis[i])cout<<dis[i]<<endl;elsedfs(i),cout<<dis[i]<<endl;}return 0;
}
View Code

 

细节:

int dfs1(int x,int cnt)
{vis[x]=1;if(vis[mp[x]]){dis[x]=cnt;return cnt;}//注意 如果这样 写不能漏掉dis[x]=cnt!!!else return dis[x]=dfs1(mp[x],cnt+1);
}

 

转载于:https://www.cnblogs.com/bxd123/p/10752636.html

http://www.lbrq.cn/news/789643.html

相关文章:

  • 百度地图导航手机版免费下载/seo是什么味
  • 珠海澳门网站建设/免费网站优化排名
  • 买服务器做网站/免费b2b信息发布网站
  • 不要营业执照的做网站/网络游戏排行榜百度风云榜
  • 自己做的视频网站如何赚钱/中文域名注册管理中心
  • 三门峡做网站/友情链接推广
  • 如何查询网站建设时间/软件开发培训机构去哪个学校
  • 北京管理咨询公司/燃灯seo
  • 重庆便宜做网站的/买域名要多少钱一个
  • 课程网站如何建设/网站编辑怎么做
  • 南昌做网站的公司/内存优化大师
  • 一级A视网站 一级做爰片/360推广联盟
  • 做程序界面的网站/商丘网络推广外包
  • 怎么可以建网站/教育培训网站官网
  • 什么公司可以做网站等级保护/域名注册 万网
  • 做网站怎样投放广告/百度的网站
  • 做网站后的总结/长沙市最新疫情
  • 黄冈论坛遗爱网购/百度seo关键词工具
  • 红色色系做网站的配色/seo方法培训
  • 网站精品案例/武汉seo全网营销
  • 咸阳北京网站建设/如何引流被动加好友微信
  • 网站的交互性/视频外链在线生成
  • wordpress中文 速度慢/seo技术专员招聘
  • 网站转换小程序/百度人工客服24小时电话
  • 模板网站建设教程/凡科建站客服电话
  • wordpress微商城插件/seo专员招聘
  • wordpress本地网站上传/网络推广员怎么做
  • wordpress调用头像/seo推广的网站和平台有哪些
  • 设计灵感的网站/百度推广客服电话人工服务
  • 大鹏外贸网站建设/拼多多标题关键词优化方法
  • ArrayDeque双端队列--底层原理可视化
  • [spring-cloud: 负载均衡]-源码分析
  • Docker 国内可用镜像
  • Javascript面试题及详细答案150道之(016-030)
  • 初始C语言---第四讲(数组)
  • 2025-08 安卓开发面试拷打记录(面试题)