Valid BFS? CodeForces - 1037D(思维 bfs)

我真是一只菜狗。。。。。。emm。。。

题意:

  判断一个从1开始的队列是否可以按照bfs的顺序 进行遍历。。必须从1开始。。。然后后边依次是bfs顺序

解析:

  看代码能看懂吧。。。emm。。。就是把每个有关系的用map标记一下

  然后bfs的时候 加一个循环进队列就好了  emm。。/。

  

#include <bits/stdc++.h>
#define rap(i, a, n) for(int i=a; i<=n; i++)
#define rep(i, a, n) for(int i=a; i<n; i++)
#define lap(i, a, n) for(int i=n; i>=a; i--)
#define lep(i, a, n) for(int i=n; i>a; i--)
#define rd(a) scanf("%d", &a)
#define rlld(a) scanf("%lld", &a)
#define rc(a) scanf("%c", &a)
#define rs(a) scanf("%s", a)
#define pd(a) printf("%d\n", a);
#define plld(a) printf("%lld\n", a);
#define pc(a) printf("%c\n", a);
#define ps(a) printf("%s\n", a);
#define MOD 2018
#define LL long long
#define ULL unsigned long long
using namespace std;
const int maxn = 200005, INF = 0x7fffffff;
int n;
map<int, bool> w[maxn];
int a[maxn];
bool bfs()
{queue<int> Q;int nex = 0;if(a[nex] != 1) return false;Q.push(a[nex]);nex++;while(!Q.empty()){int u = Q.front(); Q.pop();int v = a[nex];while(w[u][v]){Q.push(v);nex++;v = a[nex];}}if(nex == n) return true;return false;
}int main()
{rd(n);int u, v;rep(i, 0, n-1){rd(u), rd(v);w[u][v] = w[v][u] = 1;}rep(i, 0, n)rd(a[i]);if(n == 1) cout<< "Yes" <<endl;else if(bfs()) cout<< "Yes" <<endl;else cout<< "No" <<endl;return 0;
}

 

转载于:https://www.cnblogs.com/WTSRUVF/p/9581083.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/485202.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【剑指offer】面试题65:不用加减乘除做加法(Java)

写一个函数&#xff0c;求两个整数之和&#xff0c;要求在函数体内不得使用 “”、“-”、“*”、“/” 四则运算符号。 示例: 输入: a 1, b 1 输出: 2 提示&#xff1a; a, b 均可能是负数或 0 结果不会溢出 32 位整数 代码&#xff1a; class Solution { public int…

Hinton一作新论文:如何在神经网络中表示“部分-整体层次结构”?

来源 | AI科技评论作者 | Geoffrey Hinton编译 | 陈彩娴AI科技评论在 Twitter 上发现了一篇Hinton的新论文&#xff0c;作者只有Hinton本人&#xff0c;这篇论文没有介绍具体的算法&#xff0c;而是描绘了一个关于表示的宏观构想&#xff1a;如何在神经网络中表示部分-整体层次…

概率校准与Brier分数

1.再提逻辑回归 前面已经讲过了逻辑回归&#xff0c;这里不再细讲&#xff0c;只是简单的说一个函数&#xff0c;主要是方便大家更好的理解概率校准。 在逻辑回归中&#xff0c;用的最多的就是sigmod函数&#xff0c;这个函数的作用就是把无限大或者无限小的数据压缩到[0,1]之间…

【剑指offer】面试题66:构建乘积数组(Java)

给定一个数组 A[0,1,…,n-1]&#xff0c;请构建一个数组 B[0,1,…,n-1]&#xff0c;其中 B 中的元素 B[i]A[0]A[1]…A[i-1]A[i1]…A[n-1]。不能使用除法。 示例: 输入: [1,2,3,4,5] 输出: [120,60,40,30,24] 提示&#xff1a; 所有元素乘积之和不会溢出 32 位整数 a.lengt…

费曼:所有科学知识都是不确定的

来源 &#xff1a; 网络作为科学家&#xff0c;我们知道伟大的进展都源于承认无知&#xff0c;源于思想的自由。那么这是我们的责任——宣扬思想自由的价值&#xff0c;教育人们不要惧怕质疑而应该欢迎它、讨论它&#xff0c;而且毫不妥协地坚持拥有这种自由——这是我们对未来…

遍历性能

iOS开发中数组常用的五种遍历方式 随着iOS的不断发展&#xff0c;apple也不断推出性能更高的数组遍历方式&#xff0c;下面将对熟悉的五种遍历方式进行列举。 首先定义一个数组&#xff0c;并获取数组长度 一、for循环 二、forin 快速枚举 三、NSEnumerator 四、快速遍历 五、快…

【剑指offer】面试题68 - I:二叉树的最近公共祖先(Java)

给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个结点 p、q&#xff0c;最近公共祖先表示为一个结点 x&#xff0c;满足 x 是 p、q 的祖先且 x 的深度尽可能大&#xff08;一个节点也可以是它自…

工业传感器:工业互联网的第一道门

来源&#xff1a;北京物联网智能技术应用协会作者&#xff1a;刘沁沈阳仪表科学研究院副总工程师、传感器国家工程研究中心常务副主任工业的发展离不开众多感知技术的加持&#xff0c;其中最为关键的技术之一便是传感器。可以说&#xff0c;工业传感器让自动化智能设备有了感知…

数学:二项式定理

先贴一张网图来弥补一下知识点&#xff0c;回顾NOIP2011计算系数 既然我们要求的是展开式中某一项的系数&#xff0c;那么就直接求出其对应的组合数就好了&#xff0c;但是要注意x和y都是有系数a和b的 x,y换成ax,by&#xff0c;得到x^ny^m的系数是a^n*b^m*C(k,n) 这样就可以了 …

【剑指offer】面试题03:数组中重复的数字(java)

在一个长度为 n 的数组 nums 里的所有数字都在 0&#xff5e;n-1 的范围内。数组中某些数字是重复的&#xff0c;但不知道有几个数字重复了&#xff0c;也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1&#xff1a; 输入&#xff1a; [2, 3, 1, 0, 2, …

城市大脑全球标准研究2:如何理解和定义城市大脑?

作者&#xff1a;刘锋城市大脑作为一个新生事物&#xff0c;如何理解和定义反映了人们对这个新事物的理解程度&#xff0c;同时由于城市大脑是一个复杂的智能巨系统&#xff0c;如何理解和定义它对于后续的建设和发展也将产生重大和深远的影响。目前对城市大脑的定义有如下几种…

1036 跟奥巴马一起编程(15 分)

美国总统奥巴马不仅呼吁所有人都学习编程&#xff0c;甚至以身作则编写代码&#xff0c;成为美国历史上首位编写计算机代码的总统。2014 年底&#xff0c;为庆祝“计算机科学教育周”正式启动&#xff0c;奥巴马编写了很简单的计算机代码&#xff1a;在屏幕上画一个正方形。现在…

【剑指offer】面试题04:二维数组中的查找(java)

在一个 n * m 的二维数组中&#xff0c;每一行都按照从左到右递增的顺序排序&#xff0c;每一列都按照从上到下递增的顺序排序。请完成一个函数&#xff0c;输入这样的一个二维数组和一个整数&#xff0c;判断数组中是否含有该整数。 示例: 现有矩阵 matrix 如下&#xff1a; …

Bengio、Hinton的不懈追求——深度学习算法揭示大脑如何学习

来源&#xff1a;AI科技评论编译&#xff1a;Don校对&#xff1a;青暮“如果我们能够揭示大脑的某些学习机制或学习方法&#xff0c;那么人工智能将能迎来进一步的发展&#xff0c;”Bengio如是说。深度学习依赖于精妙设计的算法&#xff0c;一行行精妙绝伦的公式让冰冷的计算机…

linux下的idea的界面问题,错位以及各种...

问题 ’ 方法 主题设置为GTK,多余的点会消失,而且字体也会好很多 转载于:https://www.cnblogs.com/ydymz/p/9595229.html

【剑指offer】面试题05:替换空格(java)

请实现一个函数&#xff0c;把字符串 s 中的每个空格替换成"%20"。 示例 1&#xff1a; 输入&#xff1a;s "We are happy." 输出&#xff1a;"We%20are%20happy." 限制&#xff1a; 0 < s 的长度 < 10000 思路&#xff1a;Java中S…

我们死去后,宇宙还能记住我们吗?

图片来源&#xff1a;Pixabay撰文&#xff1a;约翰霍根&#xff08;John Horgan&#xff09;翻译&#xff1a;常灏杰审校&#xff1a;曾小欢 吴非一些物理学家坚信信息不会消失&#xff0c;甚至在黑洞中也不会消失&#xff0c;但是这一“规律”也许只是一厢情愿而已。我是个强迫…

DataPipeline | PayPal庞姬桦:大数据在小微企业贷款上的运用

庞姬桦女士毕业于北京大学和美国哥伦比亚大学&#xff0c;目前担任PayPal公司消费者风险管理总监&#xff0c;负责通过大数据实现对互联网金融风险的侦测、跟踪、管控和防范。在加入PayPal之前&#xff0c;曾任职于渣打银行&#xff08;中国&#xff09;和美国运通公司&#xf…

【剑指offer】面试题6:从尾到头打印链表(Java)

输入一个链表的头节点&#xff0c;从尾到头反过来返回每个节点的值&#xff08;用数组返回&#xff09;。 示例 1&#xff1a; 输入&#xff1a;head [1,3,2] 输出&#xff1a;[2,3,1] 限制&#xff1a; 0 < 链表长度 < 10000 思路&#xff1a;利用栈 /** * Defi…

H5 与 IOS的爱恨情仇(兼容问题)

1 input 框在ios上存在阴影的问题 input{resize: none;-webkit-appearance: none;box-sizing: border-box;} 2 H5 在ios端滚动的时候卡顿问题&#xff08;在另一人的博客写的&#xff0c;我直接用了方法1&#xff0c;挺好&#xff09; -webkit-overflow-scrolling : touch 但这…