UVa 506 System Dependencies
发布时间
阅读量:
阅读量
软件组件之间可能存在相互依赖的关系。当前任务的目标是模拟软件组件的安装与卸载流程。
要点:
- 当执行install操作时,该软件会被标记为显式安装,而其所需的依赖组件则会被视为隐式安装。采取这种设计的原因在于便于后续的remove操作。当用户执行remove命令时,系统会自动删除该软件所依赖的隐式安装组件;而对于显式安装的组件,则不会进行删除处理。这种机制实际上体现了良好的用户体验。本题中较为难以理解的部分正是这一设计逻辑。
- 题目中并未明确给出数据规模,但经过实际测试发现1e5的数据量已足够应对需求。
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10;
int num = 0;
unordered_map<string, int> mapId;
unordered_map<int, string> idMap;
vector<int> status; //组件是显式还是隐式安装的
vector<vector<int>> depend1; //组件x依赖的
vector<vector<int>> depend2; //依赖于x组件的
vector<int>
全部评论 (0)
还没有任何评论哟~
