P2921 [USACO08DEC] Trick or Treat on the Farm G

这篇具有很好参考价值的文章主要介绍了P2921 [USACO08DEC] Trick or Treat on the Farm G。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Portal.

每只奶牛的终止条件是到达自己已经访问过的点,换言之,就是该奶牛的路线构成了一个环。并且,每一个房间通往的房间都是固定且唯一的,所以说只要进入的这个房间在环上,这个房间之后会获得的糖果数已经固定了。

我们开一个数组 s 记录当前位置的糖果数量,用 vis 数组记录房间的访问情况。对于一个已经访问过得房间,我们只需要用在这个房间的糖果数量减去上一次来这个房间的糖果数量,就可以得到当前房间所在环上的糖果数量,我们用h数组记录。文章来源地址https://www.toymoban.com/news/detail-736308.html

#include <bits/stdc++.h>
using namespace std;

const int maxn=1e5+5;
int nxt[maxn],h[maxn],s[maxn],flag,n;
bool vis[maxn];

int dfs(int now,int nowc)//起始位置 当前糖果数
{
	if(h[now]) return nowc-1+h[now];//当前房间的糖果不能重复累加,要-1
	if(vis[now]==1)
	{
		h[now]=nowc-s[now];flag=now;
		return nowc-1;
	}
	vis[now]=1;s[now]=nowc;
	int ans=dfs(nxt[now],nowc+1);//当前位置符合,继续向下一个位置DFS
	if(flag)
	{
		if(now==flag) flag=0;
		else h[now]=h[flag];
	}
	else h[now]=h[nxt[now]]+1;
	vis[now]=false;
	return ans;
}

int main()
{
	cin>>n;
	for(int i=1;i<=n;i++) cin>>nxt[i];
	for(int i=1;i<=n;i++) cout<<dfs(i,1)<<endl;
	return 0;
}

到了这里,关于P2921 [USACO08DEC] Trick or Treat on the Farm G的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • P3405 [USACO16DEC] Cities and States S

    Farmer John 有若干头奶牛。为了训练奶牛们的智力,Farmer John 在谷仓的墙上放了一张美国地图。地图上表明了每个城市及其所在州的代码(前两位大写字母)。 由于奶牛在谷仓里花了很多时间看这张地图,他们开始注意到一些奇怪的关系。例如,FLINT 的前两个字母就是 MIAMI 所

    2024年03月20日
    浏览(66)
  • [USACO07DEC] Sightseeing Cows G(分数规划+负权回路判定)

    [USACO07DEC] Sightseeing Cows G - 洛谷 题目大意: 给出一张n点m边的带点权带边权的有向图 求一个回路使得路上点权和除以边权和最大(最优比率回路) 首先一定仔细读题,是回路不是路径 由于回路上所有点权只能获取一次,但边权会获取很多次,所以最优解一定是简单回路(无

    2024年02月10日
    浏览(250)
  • YOLO7报错:indices should be either on cpu or on the same device as the indexed tensor (cpu)

    当我们的数据有部分在GPU上运行,有部分在CPU上运行时会报这个错, 一般有GPU的话都会选择在GPU上面跑模型,但要注意将其他定义的对象也放在GPU上面,否则应该默认是在CPU上面。 如图所示, x是从GPU中传过来的,但idx不是,idx是我们自己生成的,它默认放在CPU中,所以我们

    2024年02月12日
    浏览(50)
  • Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the

    一、问题 在启动springboot项目中遇到如下问题: Description: Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action: Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the classp

    2024年02月03日
    浏览(41)
  • Cargo, the Rust package manager, is not installed or is not on PATH. 解决方案

    今天在配置一个关键时需要执行pip install logru,在执行过程中出现了以下错误:   error: subprocess-exited-with-error   × Preparing metadata (pyproject.toml) did not run successfully.   │ exit code: 1   ╰─ [6 lines of output]       Cargo, the Rust package manager, is not installed or is not on PATH.       This packag

    2024年02月09日
    浏览(54)
  • [USACO08FEB] Meteor Shower S BFS

    共有 M M M 颗流星 ( 1 ≤ M ≤ 50000 ) (1≤M≤50000) ( 1 ≤ M ≤ 50000 ) 会坠落在农场上,其中第 i i i 颗流星会在时刻 T i T_i T i ​ 砸在坐标为 ( X i , Y i ) ( 0 ≤ X i , Y i ≤ 300 ) (X_i,Y_i)(0≤X_i,Y_i≤300) ( X i ​ , Y i ​ ) ( 0 ≤ X i ​ , Y i ​ ≤ 300 ) 的格子里。流星会将它所在的格子,以及周

    2024年02月15日
    浏览(33)
  • P2419 [USACO08JAN]Cow Contest S

    �(1≤�≤100)N(1≤N≤100) cows, conveniently numbered 1 �1 N , are participating in a programming contest. As we all know, some cows code better than others. Each cow has a certain constant skill rating that is unique among the competitors. The contest is conducted in several head-to-head rounds, each between two cows. If cow �A has a great

    2024年02月03日
    浏览(59)
  • 洛谷P2911 [USACO08OCT] Bovine Bones G(C语言)

    看到这么小的数据范围,那当然是暴力枚举啦!况且这还是入门题,怎么可能如此难为我这种萌新呢。  我的思路是用数组下标来记录次数  这就是用三个数的和当做下标 然后后面就是遍利数组找出要的值

    2024年01月21日
    浏览(70)
  • 【洛谷】P2690 [USACO04NOV] Apple Catching G(dp or 记忆化搜索)

    ACcode: 记忆化搜索: over~

    2024年02月15日
    浏览(33)
  • USACO12OPEN Balanced Cow Subsets G(meet in the middle)

    洛谷P3067 [USACO12OPEN] Balanced Cow Subsets G 我们定义一个奶牛集合 S S S 是平衡的,当且仅当满足以下两个条件: S S S 非空 S S S 可以被划分为两个集合 A , B A,B A , B ,满足 A A A 里的奶牛产量之和等于 B B B 里的牛奶产量之和 现在给定大小为 n n n 的奶牛集合 S S S ,询问它有多少个子

    2024年02月08日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包