18945 小团的配送团队

2024-08-23 20:12
文章标签 配送 团队 小团 18945

本文主要是介绍18945 小团的配送团队,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

### 思路
1. **建图**:将订单视为图的节点,已知关系视为图的边,构建无向图。
2. **连通分量**:使用深度优先搜索(DFS)或广度优先搜索(BFS)找到图中的所有连通分量。
3. **排序**:对每个连通分量中的订单编号进行排序。
4. **输出**:按最小订单编号的顺序输出每个连通分量。

### 伪代码
1. 读取输入的订单数量n和关系数量m。
2. 构建图的邻接表表示。
3. 使用DFS/BFS找到所有连通分量。
4. 对每个连通分量中的订单编号进行排序。
5. 按最小订单编号的顺序输出每个连通分量。

### C++代码

#include <iostream>
#include <vector>
#include <algorithm>
#include <set>using namespace std;void dfs(int node, vector<vector<int>>& graph, vector<bool>& visited, vector<int>& component) {visited[node] = true;component.push_back(node);for (int neighbor : graph[node]) {if (!visited[neighbor]) {dfs(neighbor, graph, visited, component);}}
}int main() {int n, m;cin >> n >> m;vector<vector<int>> graph(n + 1);for (int i = 0; i < m; ++i) {int a, b;cin >> a >> b;graph[a].push_back(b);graph[b].push_back(a);}vector<bool> visited(n + 1, false);vector<vector<int>> components;for (int i = 1; i <= n; ++i) {if (!visited[i]) {vector<int> component;dfs(i, graph, visited, component);sort(component.begin(), component.end());components.push_back(component);}}sort(components.begin(), components.end(), [](const vector<int>& a, const vector<int>& b) {return a[0] < b[0];});cout << components.size() << endl;for (const auto& component : components) {for (int order : component) {cout << order << " ";}cout << endl;}return 0;
}


 

这篇关于18945 小团的配送团队的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1100385

相关文章

Science Robotics 首尔国立大学研究团队推出BBEX外骨骼,实现多维力量支持!

重复性举起物体可能会对脊柱和背部肌肉造成损伤,由此引发的腰椎损伤是工业环境等工作场所中一个普遍且令人关注的问题。为了减轻这类伤害,有研究人员已经研发出在举起任务中为工人提供辅助的背部支撑装置。然而,现有的这类装置通常无法在非对称性的举重过程中提供多维度的力量支持。此外,针对整个人体脊柱的设备安全性验证也一直是一个缺失的环节。 据探索前沿科技边界,传递前沿科技成果的X-robot投稿,来自首尔国立

docker基于minio部署outline团队知识库

outline 介绍 Outline 是一个开源的Wiki 知识库和团队协作文档管理工具,美观、实时协作、功能丰富且兼容 Markdown,设计用于帮助团队和组织有效地创建、共享和管理文档。 Outline 具有简单易用的界面和强大的功能,可以替代传统的文档管理系统,如 Google Docs 或 Confluence。Outline 提供了一种结构化的方式来组织信息,使团队成员可以快速访问和

2024数学建模国赛选题建议+团队助攻资料(已更新完毕)

目录 一、题目特点和选题建议 二、模型选择 1、评价模型 2、预测模型 3、分类模型 4、优化模型 5、统计分析模型 三、white学长团队助攻资料 1、助攻代码 2、成品论文PDF版 3、成品论文word版 9月5日晚18:00就要公布题目了,根据历年竞赛题目,可以分析A/B/C/D/E题目大概的类型,提前了解题目特点,在选题上就不会浪费过多时间。下面总结了一下5个题目各

PMP–一、二、三模–分类–14.敏捷–技巧–帮助团队交付价值的执行实践迭代和增量如何帮助交付工作产品

文章目录 技巧一模14.敏捷--实践--帮助团队交付价值的执行实践--持续集成--在不同层面测试、验收测试驱动开发 (ATDD) 、测试驱动开发和行为驱动开发、刺探 。90、 [单选] 敏捷项目的第一次迭代即将开始。发起人召集团队、Scrum主管、产品负责人和其他项目干系人参加启动会议。发起人强调需要在项目尽可能早的时候以最小的成本识别和应对项目风险。与会者实现发起人要求的最佳方式是什么?

一个人就能干一个团队剪辑工作?云微客就是这么神奇

你知道拍摄、剪辑一条视频需要花费多长时间吗?半个小时?还是一个小时呢?如果我想一天发布上百条视频,你觉得可能吗?很显然,仅凭个人是很难办到的,那么就需要借助工具,而云微客AI批量剪辑系统正好可以解决这个难题。 在当下这个短视频风靡的时代,不管是企业还是个人创作者们都需要借助各种工具和系统来提升创作内容的生产效率和传播效果。而云微客AI批量剪辑系统凭借着批量剪辑的功能,为创作者带来了很大的

掌握Git分支管理策略:让团队协作更高效

在现代软件开发过程中,版本控制系统(VCS)是不可或缺的一部分。Git作为目前最流行的分布式版本控制系统之一,为开发者提供了强大的工具集来管理代码变更历史。然而,仅仅掌握Git的基本命令并不足以应对大型项目和团队协作的需求。有效的分支管理策略对于保持代码库的整洁、促进团队间的高效协作至关重要。本文将探讨几种常用的Git分支管理模型,并提供一些建议来帮助你的团队选择最适合的策略。 常见的分支管

全国机器人大赛 Robocon 常州工学院团队首战国三

全国机器人大赛 Robocon 常州工学院团队首战国三 通宵7天7夜,常州工学院RC团队,首次闯入全国机器人大赛国赛,并成功得分! 不同于老牌强队,常州工学院(下面用"常工"代替)的这只队伍,大多数成员由大一组成,核心岗位由一些大二各个专业基础最为扎实的学生担任。 7月7日,19:26分。卡在报道的最后10分钟,由在团队项管和电控成功领队签到,光电Robot成为最近几年唯一一只冲入Roboc

Python知识点:如何使用Slack与Python进行团队协作

使用Slack与Python进行团队协作可以通过Slack的API来实现自动化消息发送、处理事件和管理频道等功能。以下是一些基本的步骤和示例代码来帮助你开始: 1. 创建Slack应用 首先,你需要在Slack上创建一个应用,以便获取API凭证: 访问 Slack API 页面 并登录你的Slack帐户。点击 “Your Apps”,然后点击 “Create New App”。选择 “Fro

活动预告|“AI+Security”系列第3期:AI安全智能体,重塑安全团队工作范式

由安全极客、Wisemodel社区、InForSec网络安全研究国际学术论坛和海升集团联合主办的 “AI+Security”系列第3期: AI 安全智能体,重塑安全团队工作范式  线下活动 将于2024年9月11日下午14:00 在中关村智造大街G座路演厅 正式举行 欢迎扫描海报中二维码报名参与 【会议议程】

职场关系课:团队坚决不能留的四种人(背叛者、搅局者、吸血鬼、吃白食者)

文章目录 引言I 团队坚决不能留的四种人背叛者搅局者吸血鬼吃白食者 II 和下属解约,追求的目标 引言 作为领导,不论好坏一视同仁是假公平,勤奋忠诚的员工们会很委屈,剔除害群之马,才是对好员工最大的尊重。 如果发现员工有背叛或者搅局的恶习,不要耽搁,你要赶紧解约。发现谁有吸血或者吃白食的兆头,你提示一次,最多两次已经足够。如果不改,那他就是禀性难移,也要趁早遣散。 过多的批评、