题目传送门一、题意解析\(n\)个节点,若干次询问,\(I\) \(x\) \(y\)表示从\(x\)连一条边到\(y\),权值为\(|x-y|%1000\);\(E\) \(x\)表示询问\(x\)到\(x\)所指向的终点的距离。二、实现代码#include <bits/stdc++.h>using namespace std;const int N = 20010;int
题目传送门零、经验总结家族人数到根节点距离利用人数更新到根节点距离一、题目大意有\(n\)个箱子,初始时每个箱子单独为一列;接下来有\(p\)行输入,\(M\), \(x\), \(y\) 或者 \(C\), \(x\);对于\(M\),\(x\),\(y\):表示将\(x\)箱子所在的一列箱子搬到\(y\)所在的一列箱子上;对于\(C\),\(x\):表示查询箱子\(x\)下面有多少个箱
题目传送门定理:无向图 \(G\) 具有一条欧拉回路,当且仅当 \(G\) 是连通的,并且所有结点度数为偶数。思路:不需要建图。并查集统计无向图中连通块的个数,开一个数组统计每个点的度数。#include <bits/stdc++.h>using namespace std;const int N = 1010;int n, m;int p[N];int d[N];int fi
题目传送门本题考查差分约束。如果一个系统由\(n\)个变量和\(m\)个约束条件组成,其中每个约束条件形如\(x_j-x_i<=b_k(i,j∈[1,n],k∈[1,m])\),则称其为差分约束系统(\(system\) \(of\) \(difference\) \(constraints\))。亦即,差分约束系统是求解关于一组变量的特殊不等式组的方法。简而言之,差分
#include <bits/stdc++.h> using namespace std; //输出十进制对应的二进制数(模板) void print(int n) { printf("%d:", n); //输出4个数位的二进制数 for (int i = 3; i >= 0; i--) prin
1、 去掉最右边的1的左边所有数字 例如$1101\ 1000$ 取到右边的$1000$,最后一个$1$前面的所有东东都修改为$0$。 方法:\(a\&−a\) 举个栗子: 原数原码:0000 0000 0000 0000 0000 0000 1101 1000 负数原码:1000 0000 000
题目传送门 一、算法模板 二分模板一共有两个,分别适用于不同情况。(整数二分有很多种模板,现在这个是yxc大佬的模板,经典!) 算法思路:假设目标值在闭区间[l, r]中, 每次将区间长度缩小一半,当l = r时,我们就找到了目标值。 1、向左逼近 当我们将区间[l, r]划分成[l, mid]和[
1、质数判断 bool isPrime(int n) { if (n < 2) return false; for (int i = 2; i <= n / i; i++) if (n % i == 0) return false; return true; } 2、埃拉筛 const int N
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号