首页 > 其他分享 >ZROI 7.17 做题笔记

ZROI 7.17 做题笔记

时间:2022-09-26 21:44:27浏览次数:67  
标签:7.17 int fint 笔记 fa include ZROI

并查集

板子

\(Code\)

点击查看代码
#include <cstdio>
#include <iostream>

const int N =  1e4 + 3;

int n, m, fa[N];

int fint (int k) {
	return fa[k] == k ? k : fa[k] = fint(fa[k]);
}

int main() {
	scanf("%d %d", &n, &m);
	for (int i = 1; i <= n; ++i) fa[i] = i;
	for (int i = 1, z, x, y; i <= m; ++i) {
		scanf("%d %d %d", &z, &x, &y);
		int fx = fint(x), fy = fint(y);
		if (z == 1) fa[fy] = fx;
		else if (fy == fx) printf("Y\n");
		else printf("N\n");
	}
	return 0;
}

P2391 白雪皑皑

\(Code\)

点击查看代码
#include <cstdio>
#include <iostream>
using namespace std;

const int N = 1e6 + 3;

int n, m, p, q, fa[N], col[N];

int fint(int k) {
	return fa[k] == k ? k : fa[k] = fint(fa[k]);
}

int main() {
	scanf("%d %d %d %d", &n, &m, &p, &q);
	for (int i = 1; i <= n + 2; ++i) fa[i] = i;
	for (int i = m, l, r; i >= 1; --i) {
		l = ((i * p + q) % n) + 1;
		r = ((i * q + p) % n) + 1;
		if (r < l) swap(l, r);
		for (int j = l; j <= r; ) {
			int f = fint(j);
			if (f == j) {
				col[j] = i;
				fa[j] = j + 1;
			}
			j = f;
		}
	}
	for (int i = 1; i <= n; ++i) {
		printf("%d\n", col[i]);
	}
	return 0;
}

P1955 [NOI2015] 程序自动分析

标签:7.17,int,fint,笔记,fa,include,ZROI
From: https://www.cnblogs.com/fususu654/p/16585577.html

相关文章

  • drf学习笔记
    昨日内容回顾http协议版本区别:0.9版本:每个http请求都是一个tcp的链接1.1版本:keep-alvie,每个http请求可以使用同一个tcp2.x版本:同一个tcp的包,可能是多个http请求,多路......
  • 九月第一篇关于《程序员修炼之道:从小工到专家》的阅读笔记
    《程序员修炼之道:从小工到专家》阅读笔记这本书是自从进入软件工程系以来所阅读的第二本书,本篇是九月的第一篇阅读笔记,希望在这里记录一些我的感悟。 首先从整体来看,这......
  • 集合笔记记录
    目录Collection基础概念List1.ArrayList1.1ArrayList的特点:1.2ArrayList构造源码分析:2.LinedList2.1基本介绍2.2LinkedList源码分析2.2.1构造源码2.2.2添加方......
  • 【XML】学习笔记第四章-schema
    Schema概述作用与DTD相比Schema的优势基础命名空间:模式引用方法通过xsi:noNamespaceSchemaLocation引入通过xsi:shemaLocation引入Schema的语法结构定......
  • 【XML】学习笔记第三章-namesapce
    目录命名空间命名空间概述命名空间语法命名空间的声明命名空间作用域对命名空间的使用元素对命名空间的使用属性对命名空间的使用DTD对命名空间的支持命名空间命名空间概......
  • 【XML】学习笔记第二章-dtd
    目录XML-DTDDTD语句基本声明语句引用外部DTDDTD元素四种元素类型元素定义关键字修饰符号DTD中的属性属性修饰属性类型DTD中的实体和符号符号坑XML-DTDDTD(DocumentTypeD......
  • Flask学习笔记(三)-jinja2 模板入门
    一、表达式jinja2是一个被广泛使用的模板引擎,其设计思想源自于django模板引擎,jinja2扩展了语法,增加了强大的功能,被flask选为内置的模板语言示例的目录结构如下./├─......
  • 网络流入门学习笔记
    基本概念网络流,即网络+流网络就是由许多结点和边组成的图,在这里边权表示允许通过的最大流量在网络中,有两个特殊的结点,一个叫源点,一个叫汇点网络流中最大流问题可以看成......
  • EasyCode插件的使用笔记
    1插件下载2使用idea连接数据库3选择要生成代码的数据库表,右键进行操作4修改模板entity修改模板示例##导入宏定义$!{define.vm}##保存文件(宏定义)#save("/en......
  • [学习笔记]Kruskal以及Kruskal重构树
    1.\(\operatorname{Kruskal}\)最小生成树本来觉得这个没必要写但是强迫症发作只能写了qwq真实原因是我居然交了四发才过板子题可以说是人类之耻了\(\operatorname{Kru......