HDU 4039 BFS

别再瞎猜了!Fluent瞬态计算时间步长到底设多少?一个公式+实战案例搞定 本文详细解析了Fluent瞬态计算中时间步长的设置方法,通过黄金公式和实战案例,帮助工程师准确确定时间步长,避免计算发散和资源浪费。文章还介绍了动态调整策略和典型工程场景的参数优化,提升仿真效率和精度。 阅读详情
/****************************************************************************************************
    只能用坑爹来形容。。。PE能judge成WA。。。
****************************************************************************************************/
#include <iostream>
#include <functional>
#include <algorithm>
//#include <hash_map>		//Visual C++ lib
#include <complex>
#include <cstdlib>
#include <cstring>
#include <fstream>
#include <sstream>
#include <utility>
#include <bitset>
#include <cctype>
#include <cstdio>
#include <limits>
#include <memory>
#include <string>
#include <vector>
#include <cmath>
#include <ctime>
#include <queue>
#include <stack>
#include <list>
#include <map>
#include <set>
using namespace std;

#define LOWBIT(x) ( (x) & ( (x) ^ ( (x) - 1 ) ) )
#define CLR(x, k) memset((x), (k), sizeof(x))
#define CPY(t, s) memcpy((t), (s), sizeof(s))
#define SC(t, s) static_cast<t>(s)
#define LEN(s) static_cast<int>( strlen((s)) )
#define SZ(s) static_cast<int>( (s).size() )

typedef double LF;
//typedef long long LL;		//GNU C++
//typedef unsigned long long ULL;
typedef __int64 LL;		//Visual C++ 2010
typedef unsigned __int64 ULL;

typedef pair<int, int> PII;
typedef pair<LL, LL> PLL;
typedef pair<double, double> PDD;

//typedef hash_map<int, int>::iterator HMI;
typedef map<int, int>::iterator MI;
typedef vector<int>::iterator VI;
typedef list<int>::iterator LI;
typedef set<int>::iterator SI;

template <typename T>
T sqa(const T &x)
{
	return x * x;
}
template <typename T>
T gcd(const T &a, const T &b)
{
	if (!a || !b)
	{
		return max(a, b);
	}
	T t;
	while (t = a % b)
	{
		a = b;
		b = t;
	}
	return b;
}
template <typename T>
T ext_gcd(T a, T b, T &x, T &y)
{
	if (!b)
	{
		x = 1;
		y = 0;
		return a;
	}
	T d = ext_gcd(b, a % b, x, y);
	T t = x;
	x = y;
	y = t - a / b * y;
	return d;
}

const int INF_INT = 0x3f3f3f3f;
const LL INF_LL = 0x7fffffffffffffffLL;		//15f
const double oo = 10e9;
const double eps = 10e-9;
const double PI = acos(-1.0);

const int MAXN = 2004;
const int MAXE = MAXN << 1;
const int MAXL = 100;
const int MAXC = 26;

int test, n, m;
struct Node
{
	Node *next[MAXC];
	int id;
}node[MAXN * MAXL], * const root = node;
int ncnt;
struct Edges
{
	int end;
	int next;
}edges[MAXE];
int ecnt, head[MAXN];
string name[MAXN];
int icnt;
int vcnt[MAXN];
int stop, S[MAXN];
string ans[MAXN];
bool vis[MAXN];

void initTrie()
{
	ncnt = 1;
	for (int i = 0; i < MAXC; ++i)
	{
		root->next[i] = NULL;
	}
	root->id = -1;
	return ;
}
Node * createNode()
{
	Node *ptr = &node[ncnt++];
	for (int i = 0; i < MAXC; ++i)
	{
		ptr->next[i] = NULL;
	}
	ptr->id = -1;
	return ptr;
}
int find(const string &ss)
{
	int buf;
	Node *ptr = root;
	for (int k = 0; k < SC(int, ss.length()); ++k)
	{
		buf = ss[k] - 'a';
		if (NULL == ptr->next[buf])
		{
			return -1;
		}
		ptr = ptr->next[buf];
	}
	return ptr->id;
}
void insert(const string &ss, const int &_id)
{
	int buf;
	Node *ptr = root;
	for (int k = 0; k < SC(int, ss.length()); ++k)
	{
		buf = ss[k] - 'a';
		if (NULL == ptr->next[buf])
		{
			ptr->next[buf] = createNode();
		}
		ptr = ptr->next[buf];
	}
	ptr->id = _id;
	return ;
}
void add_edge(int u, int v)
{
	edges[ecnt].end = v;
	edges[ecnt].next = head[u];
	head[u] = ecnt++;
	return ;
}
bool bfs(const int &u)
{
	CLR(vcnt, 0);
	CLR(vis, false);
	int v, w;
	stop = 0;
	int maxi = 0;
	vis[u] = true;
	for (int i = head[u]; i != -1; i = edges[i].next)
	{
		v = edges[i].end;
		vis[v] = true;
	}
	for (int i = head[u]; i != -1; i = edges[i].next)
	{
		v = edges[i].end;
		for (int j = head[v]; j != -1; j = edges[j].next)
		{
			w = edges[j].end;
			if (vis[w])
			{
				continue ;
			}
			++vcnt[w];
			if (vcnt[w] == maxi)
			{
				S[stop++] = w;
			}
			else
			{
				if (vcnt[w] > maxi)
				{
					maxi = vcnt[w];
					stop = 0;
					S[stop++] = w;
				}
			}
		}
	}
	return stop != 0;
}
bool cmp(const string &sa, const string &sb)
{
	return sa < sb;
}
bool _cmp(const int &a, const int &b)
{
	return name[a] < name[b];
}
void ace()
{
	int cas = 1;
	string s1, s2;
	int u, v;
	for (cin >> test; test--; ++cas)
	{
		cin >> n >> m;
		ecnt = 0;
		CLR(head, -1);
		initTrie();
		icnt = 0;
		for (int i = 0; i < n; ++i)
		{
			cin >> s1 >> s2;
			u = find(s1);
			if (-1 == u)
			{
				name[icnt] = s1;
				insert(s1, icnt);
				u = icnt++;
			}
			if (s1 == s2)
			{
				continue ;
			}
			v = find(s2);
			if (-1 == v)
			{
				name[icnt] = s2;
				insert(s2, icnt);
				v = icnt++;
			}
			if (u != v)
			{
				add_edge(u, v);
				add_edge(v, u);
			}
		}
		cout << "Case " << cas << ":" << endl;
		while (m--)
		{
			cin >> s1;
			u = find(s1);
			if (-1 == u)
			{
				puts("-");
				continue ;
			}
			if (!bfs(u))
			{
				puts("-");
				continue ;
			}
			for (int i = 0; i < stop; ++i)
			{
				ans[i] = name[ S[i] ];
			}
			sort(ans, ans + stop, cmp);
			cout << ans[0];
			for (int i = 1; i < stop; ++i)
			{
				cout << " " << ans[i];
			}
			cout << endl;
		}
	}
	return ;
}
int main()
{
	ace();
	return 0;
}

DELL Precision T7920加装显卡遇到的坑 文章目录DELL Precision T7920加装显卡服务器原有配置介绍选购过程确认型号确认PCIE x16插槽确认电源功率和电源线安装过程电源模组线不够多单装一个3090显卡尺寸问题加装上1080Ti非常重要!官方文档 DELL Precision T7920加装显卡 实验室由于显卡计算能力不够,以及显卡显存不够,请老师花了大价钱购入了两张GeForce 3090显卡。老师赛高!记录一下这次加装显卡过程中学到的一些知识。 服务器原有配置介绍 服务器原有一张1080Ti显卡,一个16核Xeon CPU。 阅读详情

相关推荐

能量机关 STM32HAL库开发大疆A板WS2812B彩灯(PWM+DMA)

本文主要目的是为了制作RoboMaster比赛能量机关的灯条控制,模拟比赛场中大符,搭建出类似场地道具,以供视觉测试 使用的是RoboMaster开发板A型,芯片为STM32F427IIH6,使用的灯条为WS2812B。 采用PWM+DMA控制,使用CUBEMX配置底层,keil5编辑烧录代码 实现:一共五片扇叶,每片扇叶均实现流水灯+常亮颜色 参考文章在后面会标记出来

m0_51756449的博客 4292

HDU 4039 The Social Network bfs

算了下复杂度好像是n^3 就感觉不大好做。结果n^31a。。。 #include #include #include #include #include #include #include #include using namespace std; #define eps 1e-9 #define PI acos(-1.0) #define N 1005 #define inf

九野的博客 1555

别再到处找密钥了!手把手教你搞定Halcon 24.11/25.05的试用授权(附每月更新提醒)

本文详细介绍了Halcon 24.11/25.05试用授权的获取与配置方法,包括解密新版授权机制、快速配置指南、每月更新规律及多版本共存管理技巧。帮助开发者避免常见授权问题,提升工作效率,特别适合机器视觉领域的初学者和专业人士。

weixin_29238147的博客 1179

HDU - 4039 The Social Network (BFS)

题目:HDU - 4039 The Social NetworkThe social network system (SNS) helps people to keep connecting with their friends. Every user in SNS has a friends list. The user can read news posted by the users in h

CrazyForsaken的博客 714

飞塔防火墙CVE-2022-40684漏洞复现:手把手教你搭建靶场环境(附调试技巧)

本文详细指导如何搭建Fortinet飞塔防火墙CVE-2022-40684认证绕过漏洞的靶场环境,涵盖虚拟机部署、网络配置、调试模式开启及漏洞原理分析。通过手把手教程,读者可掌握漏洞复现与深度调试技巧,深入理解该认证绕过漏洞的利用与防御。

h6i7j8的博客 695

XCAT集群管理实战:从裸机到节点批量部署

在数据中心与HPC集群运维中,裸机配置与操作系统批量部署是关键环节。PXE引导、IPMI带外管理等基础技术为自动化装机提供了底层支持,而集群管理工具则将这些能力整合为可扩展的运维体系。XCAT作为一款开源集群管理工具,通过数据库驱动的方式统一管理DHCP、TFTP、HTTP等服务,实现从裸机发现、系统安装到电源控制的全流程自动化。本文从XCAT的核心设计出发,详细介绍了环境准备、安装配置、节点定义、镜像分发及常见问题排查,帮助运维人员快速构建高效的集群部署流程,降低规模化管理的复杂度。

weixin_30899023的博客 241

hdu 4039 The Social Network bfs

照着题目的意思打代码就行了,这里我是用邻接表建的图。 先把A的所有朋友找到(统称为B),并且标记,再去找B的朋友,如果B的朋友不是A的朋友,按字典序输出出现次数最多的。 View Code #include <iostream> #include <string> #include <map> #include <queue&g...

diaopi1575的博客 172

Docker容器n8n中 read/write files from disk 无法读取容器内文件解决方案

《n8n文件读写Docker部署常见问题解决方案》摘要:针对n8n 1.90.2版本在Docker环境下文件读写失败问题,本文分析常见错误包括路径错误(ENOENT)、权限不足(EACCES)及节点误用问题。核心解决方案为:1)通过-v参数挂载宿主机目录到容器(如/files);2)使用新版Read/WriteFilesfromDisk节点操作文件;3)确保权限设置正确。提供可直接导入的示例工作流JSON,演示从CSV读取到结构化数据处理的全流程。特别强调已部署用户需重新挂载卷的正确操作方式,并附解决方案对

m0_74822402的博客 2184

HDU4039 The Social Network(bfs)

The social network system (SNS) helps people to keep connecting with their friends. Every user in SNS has a friends list. The user can read news posted by the users in his friends list. Friend relation

ling_wang的博客 751

(持续更新中!)详解【计算机类&面试真题】军队文职考试 ——第二期(真题+解析)| 网络协议的三个核心要素;交互式系统中的非剥夺策略;中断和陷入的区别;可变分区管理中的硬件机制;数据库系统的优点

本篇博客将讨论军队文职面试(计算机类)的几个关键问题。我们将介绍网络协议的核心要素(帮助你理解网络通信的基本原理)、交互式系统中的非剥夺策略(解释为何这是一个优秀的策略以及其对用户体验、系统稳定性和可预测性的影响)、中断和陷入的区别(从引起原因、处理机制、权限级别和应用等方面进行阐述)、可变分区管理的硬件机制以及数据库系统与文件系统的优点比较。通过阅读本文,您将深入了解这些话题,为面试准备和实际应用提供有价值的知识。

追光者♂:记录、分享、总结、提升,现象级专栏《Python从入门到人工智能》作者,无惧黑暗,坚信曙光 1707

【MATLAB】嵌入式ADC/DAC控制工程

摘要:本文针对嵌入式ADC/DAC应用中存在的量化误差、采样噪声、输出漂移等问题,提出基于MATLAB的仿真优化方案。通过构建完整的ADC/DAC仿真模型,实现了采样建模、数字滤波、误差校准和闭环控制仿真。方案采用滑动平均滤波抑制ADC噪声,双校准参数补偿DAC固有误差,并将算法轻量化移植至STM32平台。实测表明,该方案使ADC采样波动从±25mV降至±5mV,DAC输出偏差从42mV降至18mV,显著提升了模拟量交互精度和系统稳定性。整套方案资源占用低,适配各类嵌入式高精度控制场景,具有较高的工程应用价

unber的博客 650

成都赛区网选 HDU 4039 The Social Network(BFS)

给出n个人物关系,p个查询,询问每个人的推荐好友(公共好友最多的且不是好友的人)。 将人物看作点,存在好友关系看作边,则题意转化为查询与某点最短路径长度为2的最多路径的点。 这样直接构图后BFS即可,将深度为2的存进队列查询次数,注意下输出格式和数组的大小,人是有可能超过10

jxy859的专栏 1130

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

hdu 4039

题意:一个好友推荐系统,就是像微博那个推荐一样,你有多少个好友关注了他,这题只要你找出最多好友关注的那个,如有多个,按字典序输出推荐的好友。 很容易的想到直接bfs两层查找统计即可,一般都是用map,但要注意优化,sort那里没有优化就tle了,我直接把第二层的且不是他好友的全

XYM-AC之路 1143

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

hdu 4039 暴力 The social network

题意:给出N对好友关系,之后Q次提问,问可以对该用户推荐的相识度最高的好友; 解:      纯暴力啊。第一次写又是T又是CE又是RE的,没办法了。重新搞一遍。用了十多分钟重写了一遍,然后重新交了,WA了,还好没T。昨天晚上改了改初始化,还是没过。今天早上看了一遍,将初始化向量的n改成了 2 * n,找不出错了,就交了。神一般地过了。一样的思路,我觉得基本一样的代码,为什么第一次的T了呢。。。

Julyana_Lin_夜 886

【水STL】hdu 4039

#include #include #include #include #include #include #include #include #include #include #include #include #include #include

leolin_的专栏 496

推荐朋友 - LintCode

拼多多笔试第三题 除了题目具体方法值得注意外,数据的输入格外注意 题目 描述 给n个人的朋友名单,告诉你user,请找出user最可能认识的人。(他和user有最多的共同好友且他不是user的朋友) n &lt;= 500。 好友关系是相互的。(b若出现在a的好友名单中,a一定出现在b的好友名单中) 每个人的好友关系不超过 m 条,m &lt;= 3000。 如果有两个人和user的共同好友...

weixin_34404393的博客 141

The-social-network

题目: HDU - 4039 The Social Network The social network system (SNS) helps people to keep connecting with theirfriends. Every user in SNS has a friends list. The user can read news posted bythe users i

佳梦作快马 诗酒趁年华 351

oracle客户端最小安装教程,Oracle客户端安装教程

第一次尝试编写java昨晚手贱,不小心把环境变量path里面都东西全删除了 然后上百度搜了一波又一波 最后还是复制达达的 感动 然后还是不行,最后发现错误竟然是分号用了汉字的分号而不是英文的分号 这个问题在编写C语言也出现 ...【BZOJ 1877】 &lbrack;SDOI2009&rsqb;晨跑Description Elaxia最近迷恋上了空手道,他为自己设定了一套健身计划...

weixin_39867327的博客 303

HDU 4013 图论 树的最小表示

/******************************************************************************* 去年上海赛区热身赛的一道题,树的最小表示模板题。解法就是用二进制枚举所有可能的联通子图,然后 求所有联通子图的最小表示,要注意的是对于某一个联通子图,最小表示需要枚举联通子图里的所有的点,然 后从这些点开始进行dfs,dfs过程中进

源码力量 2521

HDU 4121 模拟

/**************************************************************************************************** 坑爹的模拟题~注意这两种情况:黑方的将能直接飞过去杀了红方的将,还有将走一步能把红方别的子给吃了。。。 ******************************************

源码力量 1773

HDU 3644 计算几何 模拟退火

/* * ===================================================================================== * * Filename: hdu3644.cpp * * Description: Calculate Geometry -- Simulated annealing * *

源码力量 1742

HDU 4049 状态压缩DP

/******************************************************************************* 去年北京赛区网络赛水题,状态压缩DP,一开始TLE,然后发现是没初始化,应该用空间换时间来着, 接着WA,搞了半天没搞明白。。。最后发现发现一个小小的纰漏~~~ 解法就是建立状态dp[M][1 << N],用第一个状态表示

源码力量 1675

HDU 1512 左式堆 + 并查集

/* * ===================================================================================== * * Filename: hdu1512.cpp * * Description: Leftist Heap + Union Find Set * * Version

源码力量 1616

HDU 4036 物理坑爹题

/******************************************************************************* 坑爹的地方比较多,首先所有质量都是没用的,因为无摩擦力;其次坐标最好都用double表示;还有那个 土豆是的坐标是相对于第一个peak的坐标,第四貌似有土豆可以不在peak的范围内。。。以后找min/max值 还是用第一个元素做标记

源码力量 1590

HDU 3656 DLX重复覆盖

/********************************************************************************* 纠结了良久,这个题是DLX的重复覆盖问题,以前还没见过,最后套了晓天大牛的模板,水过了。 还是模板题。。。因为最后的答案必然是某两点的距离,所以离散化一下所有距离后二分再套用DLX 重复覆盖模板就能AC了~赞一下神函数uniq

源码力量 1565
上一篇: HDU 3065 AC自动机
下一篇: HDU 4033 二分+计算几何
codeforces_sphinx
博客等级 码龄15年 32粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值