当前位置: 首页 > news >正文

CF505B Mr. Kitayuta‘s Colorful Graph

Mr. Kitayuta’s Colorful Graph

题面翻译

给出一个 n n n 个点, m m m 条边的无向图,每条边上是有颜色的。有 q q q 组询问

对于第 i i i 组询问,给出点对 u i , v i u_i,v_i ui,vi。求有多少种颜色 c c c 满足:有至少一条 u i u_i ui v i v_i vi 路径,满足该路径上的所有边的颜色都为 c c c

输入格式

第一行两个整数 n , m n,m n,m 分别表示点的个数和边的个数
接下来 m m m 行,每行三个整数 x i , y i , c i x_i,y_i,c_i xi,yi,ci,表示有一条连接点 x i , y i x_i,y_i xi,yi 的边,且该边的颜色为 c i c_i ci

接下来一行一个整数 q q q,表示询问的个数

接下来 q q q 行,每行两个整数 u i , v i u_i,v_i ui,vi,表示一组询问

输出格式

对于每一组询问,在单独的一行输出一个整数,表示满足上述要求的颜色种数

说明与提示

2 ≤ n ≤ 100 2 \le n \le 100 2n100
1 ≤ m , q ≤ 100 1 \le m,q \le 100 1m,q100
1 ≤ x i , y i , u i , v i ≤ n 1\le x_i,y_i,u_i,v_i \le n 1xi,yi,ui,vin
1 ≤ c i ≤ m 1 \le c_i \le m 1cim
感谢 @_Wolverine 提供的翻译

题目描述

Mr. Kitayuta has just bought an undirected graph consisting of $ n $ vertices and $ m $ edges. The vertices of the graph are numbered from 1 to $ n $ . Each edge, namely edge $ i $ , has a color $ c_{i} $ , connecting vertex $ a_{i} $ and $ b_{i} $ .

Mr. Kitayuta wants you to process the following $ q $ queries.

In the $ i $ -th query, he gives you two integers — $ u_{i} $ and $ v_{i} $ .

Find the number of the colors that satisfy the following condition: the edges of that color connect vertex $ u_{i} $ and vertex $ v_{i} $ directly or indirectly.

输入格式

The first line of the input contains space-separated two integers — $ n $ and $ m $ ( $ 2<=n<=100,1<=m<=100 $ ), denoting the number of the vertices and the number of the edges, respectively.

The next $ m $ lines contain space-separated three integers — $ a_{i} $ , $ b_{i} $ ( $ 1<=a_{i}<b_{i}<=n $ ) and $ c_{i} $ ( $ 1<=c_{i}<=m $ ). Note that there can be multiple edges between two vertices. However, there are no multiple edges of the same color between two vertices, that is, if $ i≠j $ , $ (a_{i},b_{i},c_{i})≠(a_{j},b_{j},c_{j}) $ .

The next line contains a integer — $ q $ ( $ 1<=q<=100 $ ), denoting the number of the queries.

Then follows $ q $ lines, containing space-separated two integers — $ u_{i} $ and $ v_{i} $ ( $ 1<=u_{i},v_{i}<=n $ ). It is guaranteed that $ u_{i}≠v_{i} $ .

输出格式

For each query, print the answer in a separate line.

样例 #1

样例输入 #1

4 5
1 2 1
1 2 2
2 3 1
2 3 3
2 4 3
3
1 2
3 4
1 4

样例输出 #1

2
1
0

样例 #2

样例输入 #2

5 7
1 5 1
2 5 1
3 5 1
4 5 1
1 2 2
2 3 2
3 4 2
5
1 5
5 1
2 5
1 5
1 4

样例输出 #2

1
1
1
1
2

提示

Let’s consider the first sample.

The figure above shows the first sample. - Vertex $ 1 $ and vertex $ 2 $ are connected by color $ 1 $ and $ 2 $ .

  • Vertex $ 3 $ and vertex $ 4 $ are connected by color $ 3 $ .
  • Vertex $ 1 $ and vertex $ 4 $ are not connected by any single color.

思路

(1)并查集
一个二维并查集,一个记录颜色,一个记录点。
(2)Floyed
普通Floyed加一维颜色。数据只有100四维循环不会T。

AC code

(1)并查集

#include<bits/stdc++.h>using namespace std;int fa[1000][1000];
int n, m, t;int find(int x, int i) 
{if (fa[x][i] == x) return x;return fa[x][i] = find(fa[x][i], i); 
}int main()
{cin >> n >> m;for (int i = 1; i <= n; i++)for (int j = 1; j <= m; j++)fa[i][j] = i; for (int i = 1; i <= m; ++i){int u, v, z;cin >> u >> v >> z;fa[find(u, z)][z] = find(v,z); }cin >> t;while (t--){int u, v, ans = 0;cin >> u >> v;for(int i = 1; i <= m;i++)if (find(u,i) == find(v,i)) ans++; cout << ans << endl;}return 0;
}

(2)Floyed

#include<bits/stdc++.h>using namespace std;int a[101][101][101];int main()
{int n, m;cin >> n >> m;for(int i = 1; i <= m; i++){int u, v, q;cin >> u >> v >> q;a[u][v][q] = 1;a[v][u][q] = 1;}for (int k = 1; k <= n; k++)for (int i = 1; i <= n; i++)for (int j = 1; j <= n; j++)for (int c = 1; c <= m; c++)if (a[i][k][c] == 1 && a[k][j][c] == 1)a[i][j][c] = 1;int q;cin >> q;for (int i = 1; i <= q; i++){int u, v;cin >> u >> v;int sum = 0;for(int j = 1; j <= m; j++)if(a[u][v][j] == 1)sum++;cout << sum << endl;}return 0;
}

相关文章:

CF505B Mr. Kitayuta‘s Colorful Graph

Mr. Kitayuta’s Colorful Graph 题面翻译 给出一个 n n n 个点&#xff0c; m m m 条边的无向图&#xff0c;每条边上是有颜色的。有 q q q 组询问 对于第 i i i 组询问&#xff0c;给出点对 u i , v i u_i,v_i ui​,vi​。求有多少种颜色 c c c 满足&#xff1a;有至…...

c#设计模式-结构型模式 之 组合模式

&#x1f680;简介 组合模式又名部分整体模式&#xff0c;是一种 结构型设计模式 &#xff0c;是用于把一组相似的对象当作一个 单一的对象 。组合模式 依据树形结构来组合对象 &#xff0c;用来表示部分以及整体层&#xff0c;它可以让你将对象组合成树形结构&#xff0c;并且…...

【Rust日报】2023-09-30 使用Rust做web抓取

CockroachDB 用rust重新实现 嘿&#xff0c;伙计们&#xff0c;我在 Rust 中实现了一个分布式 SQL 数据库。它就像 CockroachDB 和谷歌Google Spanner。告诉我你的想法。 注意: 这不是生产级别的数据库&#xff0c;这是一个以学习为目的的项目。有许多特性&#xff0c;但是缺少…...

【密评】商用密码应用安全性评估从业人员考核题库(三)

商用密码应用安全性评估从业人员考核题库&#xff08;三&#xff09; 国密局给的参考题库5000道只是基础题&#xff0c;后续更新完5000还会继续更其他高质量题库&#xff0c;持续学习&#xff0c;共同进步。 501 多项选择题 《个人信息保护法》要求个人信息处理者应当采取哪些…...

MySQL进阶_查询优化和索引优化

文章目录 第一节、索引失效案例1.1 数据准备1.2 全值匹配我最爱1.3 最佳左前缀法则 第一节、索引失效案例 可以从以下维度对数据库进行优化&#xff1a; 索引失效、没有充分利用到索引–索引建立关联查询太多JOIN (设计缺陷或不得已的需求)–SQL优化服务器调优及各个参数设置…...

Hadoop2复安装过程详细步骤

1、在vmware中更改了虚拟机的网络类型&#xff0c;--->NAT方式&#xff0c;&#xff08;虚拟交换机的ip可以从vmvare的edit-->vertual network editor看到&#xff09; 2、根据这个交换机&#xff08;网关&#xff09;的地址&#xff0c;来设置我们的客户端windows7的ip&…...

【Java-LangChain:面向开发者的提示工程-7】文本扩展

第七章 文本扩展 扩展是将短文本&#xff08;例如一组说明或主题列表&#xff09;输入到大型语言模型中&#xff0c;让模型生成更长的文本&#xff08;例如基于某个主题的电子邮件或论文&#xff09;。这种应用是一把双刃剑&#xff0c;好处例如将大型语言模型用作头脑风暴的伙…...

竞赛 基于设深度学习的人脸性别年龄识别系统

文章目录 0 前言1 课题描述2 实现效果3 算法实现原理3.1 数据集3.2 深度学习识别算法3.3 特征提取主干网络3.4 总体实现流程 4 具体实现4.1 预训练数据格式4.2 部分实现代码 5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于深度学习机器视觉的…...

从技能需求到就业前景,了解前端和后端开发的优缺点和个人选择

文章目录 每日一句正能量一、引言前端开发后端开发 二、两者的对比分析三、技能转换和跨领域工作四&#xff1a;介绍全栈开发后记 每日一句正能量 命运决定的不是你的人生&#xff0c;能决定你人生的只有自己。 一、引言 前端和后端是Web开发中两个不可或缺的领域。前端开发主…...

Flutter笔记:AnimationMean、AnimationMax 和 AnimationMin 三个类的用法

Flutter笔记 AnimationMean、AnimationMax 和 AnimationMin三个类的用法 作者&#xff1a;李俊才 &#xff08;jcLee95&#xff09;&#xff1a;https://blog.csdn.net/qq_28550263 邮箱 &#xff1a;291148484163.com 本文地址&#xff1a;https://blog.csdn.net/qq_28550263/…...

华为云云耀云服务器L实例评测|云耀云服务器L实例部署Gogs服务器

华为云云耀云服务器L实例评测&#xff5c;云耀云服务器L实例部署Gogs服务器 一、云耀云服务器L实例介绍1.1 云耀云服务器L实例简介1.2 云耀云服务器L实例特点 二、Gogs介绍2.1 Gogs简介2.2 Gogs特点 三、本次实践介绍3.1 本次实践简介3.2 本次环境规划 四、远程登录华为云云耀云…...

操作系统--分页存储管理

一、概念介绍 分页存储&#xff1a;一是分内存地址&#xff0c;二是分逻辑地址。 1.分内存地址 将内存空间分为一个个大小相等的分区。比如&#xff0c;每个分区4KB。 每个分区就是一个“页框”&#xff0c;每个页框有个编号&#xff0c;即“页框号”&#xff0c;“页框号”…...

【算法练习Day10】有效的括号删除字符串中的所有相邻重复项逆波兰表达式求值

​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;练题 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录 有效的括号删除字符串中的所…...

10.1 校招 实习 内推 面经

绿泡*泡&#xff1a; neituijunsir 交流裙 &#xff0c;内推/实习/校招汇总表格 1、自动驾驶一周资讯 - 苹果汽车项目泡汤&#xff1f;纵目科技IPO终止&#xff0c;腾讯与岚图汽车合作升级&#xff0c;158亿元现金收购比亚迪“史上最大”并购案 自动驾驶一周资讯 - 苹果汽车…...

Redis中Set类型的操作

Set的结构与list相似&#xff0c;但底层存储结构是hashtable&#xff0c;因此它的值是唯一的&#xff0c;同时添加的顺序与保存的顺序并不一致。每一个Set类型的key中可以存储2^32-1个元素。 一、应用场景 1、保存用户的收藏 在小说网站中保存用户的收藏&#xff0c;收藏 的小…...

正确完成实时 AI

发表于 构建真实世界的实时 AI 一、说明 我们知道&#xff0c;当前的AI进展是扎根于历史数据&#xff0c;这就造成一个事实&#xff0c;模型总是赶不上实时进展&#xff0c;模型的洞察力不够尖锐&#xff0c;或者&#xff0c;时间损失等&#xff0c;本篇对这一系列AI的短板展开…...

深度学习笔记之线性代数

深度学习笔记之线性代数 一、向量 在数学表示法中&#xff0c;向量通常记为粗体小写的符号&#xff08;例如&#xff0c;x&#xff0c;y&#xff0c;z&#xff09;当向量表示数据集中的样本时&#xff0c;它们的值具有一定的现实意义。例如研究医院患者可能面临的心脏病发作风…...

Python与Scrapy:构建强大的网络爬虫

网络爬虫是一种用于自动化获取互联网信息的工具&#xff0c;在数据采集和处理方面具有重要的作用。Python语言和Scrapy框架是构建强大网络爬虫的理想选择。本文将分享使用Python和Scrapy构建强大的网络爬虫的方法和技巧&#xff0c;帮助您快速入门并实现实际操作价值。 一、Pyt…...

kind 安装 k8s 集群

在某些时候可能需要快速的部署一个k8s集群用于测试&#xff0c;不想部署复杂的k8s集群环境&#xff0c;这个时候我们就可以使用kind来部署一个k8s集群了&#xff0c;下面是使用kind部署的过程 一、安装单节点集群 1、下载kind二进制文件 [rootlocalhost knid]# curl -Lo ./kin…...

Leetcode 2871. Split Array Into Maximum Number of Subarrays

Leetcode 2871. Split Array Into Maximum Number of Subarrays 1. 解题思路2. 代码实现 题目链接&#xff1a;2871. Split Array Into Maximum Number of Subarrays 1. 解题思路 这一题实现上其实还是比较简单的&#xff0c;就是一个贪婪算法&#xff0c;主要就是思路上需要…...

Java基础---第十三篇

系列文章目录 文章目录 系列文章目录一、有数组了为什么还要搞个 ArrayList 呢?二、说说什么是 fail-fast?三、说说Hashtable 与 HashMap 的区别一、有数组了为什么还要搞个 ArrayList 呢? 通常我们在使用的时候,如果在不明确要插入多少数据的情况下,普通数组就很尴尬了,…...

Java 文档注释

Java 文档注释 目录 Java 文档注释 javadoc 标签 文档注释 javadoc输出什么 实例 Java只是三种注释方式。前两种分别是// 和/* */&#xff0c;第三种被称作说明注释&#xff0c;它以/** 开始&#xff0c;以 */结束。 说明注释允许你在程序中嵌入关于程序的信息。你可以使…...

【多媒体技术与实践】多媒体计算机系统概述

数码相机是利用___感受光信号&#xff0c; 使转换为电信号&#xff0c;再经模/数转换变成数字信号&#xff0c;存储在相机内部的存储器中。 选择一项&#xff1a; a. RGB b. OCR c. CCD d. MPEG 正确答案是&#xff1a;CCD 最基本的多媒体计算机是指安装了_部件的计算机。…...

DirectX 3D C++ 圆柱体的渲染(源代码)

作业内容 请勿抄袭 代码功能&#xff1a;渲染一个绕中心轴自转的圆柱体。要求该圆柱体高度为3.0&#xff0c;半径为0.5。 #include <windows.h> #include <d3d11.h> #include <d3dx11.h> #include <d3dcompiler.h> #include <xnamath.h> #incl…...

搭建前端框架

在终端进入web目录&#xff0c;然后创建vuecrud工程 创建工程并引入ElementUI和axios手把手教学>传送门:VueCLI脚手架搭建...

2310C++构造对象

原文 本文展示一个构造对象方式,用户无需显式调用构造器.对有参构造器类,该实现在构造改对象时传递默认值来构造. 当然用户也可指定(绑定)某个参数的值.实现思路参考boost-ext/di的实现.看下示例: 构 成员{整 x10; }; 构 成员1{整 x11; }; 类 例子1{ 公:例子1(成员 x,成员1 x…...

nginx多文件组织

背景&#xff1a; nginx的话&#xff0c;有时候&#xff0c;想部署多个配置&#xff0c;比如&#xff1a;使用不同的端口配置不同的web工程。 比如&#xff1a;8081部署&#xff1a;项目1的web页面。 8082部署&#xff1a;项目2的web页面。 1)nginx.conf worker_processes…...

扩容LVM卷导致lvm元数据丢失的恢复过程

一、问题描述 因某次MySQL binlog占用过高扩容时&#xff0c;是直接对云盘操作&#xff0c;而扩容直接操作了lvm卷而未操作云盘分区&#xff0c;并随后执行了扩容的partprobe&#xff0c;resize2fs卷等操作&#xff1b;最后&#xff0c;显示并未扩容成功&#xff0c;重启系统后…...

【MySQL教程】| (1-1) 2023MySQL-8.1.0 安装教程

文章目录 一、安装包下载二、安装配置1、解压安装包2、编写MySQL配置文件3、初始化MySQL数据库3、安装mysql服务并启动4、MySQL服务5、连接MySQL6、修改密码 三、配置环境变量四、防止mysql自启动拖慢开机时间 近日有粉丝问到mysql在win11的安装中遇到一些问题&#xff0c;应粉…...

数据大屏定时请求后端数据

需求&#xff1a; 因为大屏基本从上午展示到晚上&#xff0c;不会频繁去打开页面。 前端实现&#xff1a; 在Vue的created钩子函数中发送初次请求&#xff0c;并使用JavaScript中的setInterval函数来设置整点定时发送请求。以下是一个示例 <template><div><h1…...

沈阳高端做网站建设/seo北京

1. ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/pod 苹果系统升级 OS X EL Capitan 后会出现的插件错误&#xff0c;将 安装 CocoaPods 的 sudo gem install cocoapods 改为 sudo gem install -n /usr/local/bin cocoapods 第二个大坑…...

大连cms建站模板/长沙企业关键词优化哪家好

和上一道题没什么差别&#xff0c;把output改成数字就可以了。这时候需要注意下作用域问题&#xff0c;如果output在BackTrack函数外定义&#xff0c;且不是list&#xff0c;那么就不能传到内嵌函数里。 class Solution:def totalNQueens(self, n: int) -> int:if n 1:ret…...

北京旅游型网站建设/seo在线优化工具

题目描述 输入一个链表&#xff0c;输出该链表中倒数第k个结点。 解题思路 两个头指针第一个先走到k然后一起走&#xff0c;第一个走完时&#xff0c;第二个指向倒数第k个节点 代码实现 /* public class ListNode {int val;ListNode next null;ListNode(int val) {this.v…...

网站建设验收标准/网站seo系统

刊号 # 28 - Oct 05, 2008 项目新闻 准备翻译&#xff1a;NetBeans 6.5 本地化 NetBeans 社区成员正在准备 NetBeans 6.5的翻译&#xff1a;新的 L10N&#xff08;本地化&#xff09;工具已经准备好了。语言团队以前工作与老的工具上&#xff0c;将需要更新或者重新做一些文件。…...

用什么软件可以做网站/semiconductor是什么意思

VirtualBox带来VBoxManager.exe,可以来转换格式。 命令如下(Windows环境&#xff0c;Linux版的应该也有VBoxManager这个二进制文件)&#xff1a; VBoxManager存在于VirtualBox的安装目录下。 vmdk转换成vdi VBoxManage.exe clonehd source.vmdk target.vdi --format VDI vdi转…...

seo 网站地图/青岛网

今天早晨&#xff0c;打开数据库一看&#xff0c;保存的数据全不见了&#xff0c;只剩下一个叫PLEASE_READ_ME_VVV的数据库。里面写着To recover your lost Database and avoid leaking it: Send us 0.045 Bitcoin (BTC) to our Bitcoin address 1McksxpysJGSG9a9zHvan5f8Y1nfp…...