从某一点开始,以层次遍历的方式建树
若三点a、b、c互相连接,首先必先经过其中一点a,然后a可以拓展b、c两点,b、c两点的高度是相同的,若b(c)拓展时找到高度与之相同的点,则存在三点互相连接

//等等:该算法正确证有待斟酌,我在看到这个方法的增强版,这方法也许有漏洞

//(注:这想法应该是在17年网络同步赛的时候别人想到的(大致是这样),但貌似写的方法跟我不同)

与acm网络同步赛的某道题有点类似(还有那个定理:若人数大于等于六个,至少存在三个人互相认识,或三个人互不认识)

别人的方法在这(https://www.jisuanke.com/minicourse/1249):

 /*
从某一点开始,以层次遍历的方式建树
若三点a、b、c互相连接,首先必先经过其中一点a,然后a可以拓展b、c两点,b、c两点的高度是相同的,若b(c)拓展时找到高度与之相同的点,则存在三点互相连接
*/
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <list>
#include <stack>
#include <vector>
#include <set>
#include <map>
#include <queue>
#include <algorithm>
#include <iostream>
using namespace std; struct node
{
long d;
struct node *next;
}*point[],*p;
long q[],dep[]; int main()
{
long n,m,i,head,tail,a,b;
scanf("%ld%ld",&n,&m);
for (i=;i<=n;i++)
point[i]=NULL;
for (i=;i<=m;i++)
{
scanf("%ld%ld",&a,&b);
p=(struct node *) malloc (sizeof(struct node));
p->d=a;
p->next=point[b];
point[b]=p; p=(struct node *) malloc (sizeof(struct node));
p->d=b;
p->next=point[a];
point[a]=p;
}
for (i=;i<=n;i++)
dep[i]=-;
//有可能有很多块
for (i=;i<=n;i++)
if (dep[i]==-)
{
q[]=i; dep[i]=;
head=;
tail=;
while (head<tail)
{
head++;
p=point[q[head]];
while (p)
{
if (dep[p->d]==-)
{
tail++;
q[tail]=p->d;
dep[p->d]=dep[q[head]]+;
}
else if (dep[p->d]==dep[q[head]])
{
printf("");
return ;
}
p=p->next;
}
}
}
printf("");
return ;
}

SenseTime Ace Coder Challenge 暨 商汤在线编程挑战赛 D. 白色相簿的更多相关文章

  1. SenseTime Ace Coder Challenge 暨 商汤在线编程挑战赛 A. 地铁站

    //其实比赛的时候就想到这方法了,但看到数据太吓人,就没写//看着标程,实际上就是这方法,太坑爹…… /* 假设值为k,对于图中任意两点,圆1半径k/t1,圆2半径k/t2 圆1与圆2的交集为可以设置 ...

  2. SenseTime Ace Coder Challenge 暨 商汤在线编程挑战赛 E. 疯狂计数

    1.改高精度 :float/double的精度为x位,小数部分最多x+x位(乘法和加法),整数部分<1000000*1000000/2=5 * 10^11 2.分成整数部分和小数部分分别存储,貌 ...

  3. SenseTime Ace Coder Challenge 暨 商汤在线编程挑战赛*

    题目链接   Problems Problem A Problem B bitset…… Problem C Problem D Problem E Problem F Problem G 考虑最小生 ...

  4. 商汤科技汤晓鸥:其实不存在AI行业,唯一存在的是“AI+“行业

    https://mp.weixin.qq.com/s/bU-TFh8lBAF5L0JrWEGgUQ 9 月 17 日,2018 世界人工智能大会在上海召开,在上午主论坛大会上,商汤科技联合创始人汤晓鸥 ...

  5. 2019 计蒜之道 初赛 第一场 商汤AI园区的n个路口(中等) (树形dp)

    北京市商汤科技开发有限公司建立了新的 AI 人工智能产业园,这个产业园区里有 nn 个路口,由 n - 1n−1 条道路连通.第 ii 条道路连接路口 u_iui​ 和 v_ivi​. 每个路口都布有 ...

  6. 旷视向左、商汤向右,AI一哥之名将落谁家

    编辑 | 于斌 出品 | 于见(mpyujian) AI风口历经多年洗礼之后,真正意义上的AI第一股终于要来了. 相比于聚焦在语音识别技术上的科大讯飞.立足互联网产业的百度.发力人形机器人领域的优必选 ...

  7. 计蒜客 第四场 C 商汤科技的行人检测(中等)平面几何好题

    商汤科技近日推出的 SenseVideo 能够对视频监控中的对象进行识别与分析,包括行人检测等.在行人检测问题中,最重要的就是对行人移动的检测.由于往往是在视频监控数据中检测行人,我们将图像上的行人抽 ...

  8. 算法与数据结构(2)--英雄会第三届在线编程大赛:几个bing

    基础知识的回顾不再写到这里面了,会写一些算法算法的解答或者读一些相关书籍的笔记. 今天做了一道算法题,来自微软必应·英雄会第三届在线编程大赛:几个bing? 做出来了...但不知道为啥执行测试用例失败 ...

  9. csdn在线编程里面的一个排列组合题

    是csdn在线编程里面的一个问题 回文字符串是指从左到右和从右到左相同的字符串,现给定一个仅由小写字母组成的字符串,你可以把它的字母重新排列,以形成不同的回文字符串. 输入:非空仅由小写字母组成的字符 ...

随机推荐

  1. hadoop之定制自己的Partitioner

    partitioner负责shuffle过程的分组部分,目的是让map出来的数据均匀分布在reducer上,当然,如果我们不需要数据均匀,那么这个时候可以自己定制符合要求的partitioner. 下 ...

  2. passwd命令详解

    基础命令学习目录首页 passwd命令用于设置用户的认证信息,包括用户密码.密码过期时间等.系统管理者则能用它管理系统用户的密码.只有管理者可以指定用户名称,一般用户只能变更自己的密码. 语法 pas ...

  3. No.1001_第六次团队会议

    黯淡的一日 今天发生了很令人不爽的一件事,杜正远又被叫去实验室了.昨天界面就很难做,而且我们组人手稀缺,他的缺席让我很难做下去. 今天开会我自己没做出什么来,就加了一个群组的添加功能,同样,曾哲昊也没 ...

  4. 奔跑吧DKY——团队Scrum冲刺阶段-Day 4

    今日完成任务 谭鑫:主要解决之前存在的控件不灵敏问题,导致界面跳转不顺利. 黄宇塘:制作新的游戏背景图,对主界面图进行调整. 赵晓海:主要解决之前存在的控件不灵敏问题,导致界面跳转不顺利. 方艺雯:制 ...

  5. 《找出1到正整数N中出现1的次数》

    <找出1到正整数N中出现1的次数> 编程思想:依次求出正整数每个位数上出现1的次数,累加即可得到最后想要的结果:而每一位上出现1的个数与和它相邻的其它位数上的数字有关系(以此位置上的数为对 ...

  6. Java未赋值变量的默认初始值

    在 Java 程序中,任何变量都必须经初始化后才能被使用.当一个对象被创建时,实例变量在分配内存空间时按程序员指定的初始化值赋值,否则系统将按下列默认值进行初始化: 数据类型 初始值 byte 0 s ...

  7. StringBuffer 与 StringBuilder类的使用

    /*如果需要频繁修改字符串 的内容,建议使用字符串缓冲 类(StringBuffer). StringBuffer 其实就是一个存储字符 的容器. 笔试题目:使用Stringbuffer无 参的构造函 ...

  8. json反序列化对象

    这个是同事研究的wcf中中根据type类型反序列化json的示例 /// <summary> /// json转对象 /// </summary> /// <param ...

  9. WPF自学入门(十二)WPF MVVM模式提取函数

    我们平时在写代码时为了不重复写代码,会进行复制代码或者写通用方法.今天我们就来把上传做的函数提取成为通用的方法调用.把上次写的函数提取为两个主要的文件:ObserableObject和RelayCom ...

  10. Windows10(UWP)下的MEF

    前言 最近在帮一家知名外企开发Universal Windows Platform的相关应用,开发过程中不由感慨:项目分为两种,一种叫做前人栽树后人乘凉,一种叫做前人挖坑后人遭殃.不多说了,多说又要变 ...