摘要:
题目链接:https://www.luogu.com.cn/problem/P2661 法一:并查集 当两个点x和y之间存在一条边,且他们的祖先都相同时,就会形成一个环,环的大小为dis[x]+dis[y]+1 #include <bits/stdc++.h> #define Pair pair<i 阅读全文
摘要:
题目链接: https://codeforces.com/contest/1339/problem/E 思路: 打表找规律,发现将三元组的第一个数转化成二进制之后,由低位到高位,将01变成11,10变成01,11,变成10 即为三元组的第二个数的二进制形式然后再异或求出第三个数。 该图为第16个数到 阅读全文
摘要:
题意: 给你一颗有n个节点的树,让你给每一条边赋一个值,最后要求每对叶子节点之间的简单路径中的边异或和为0, 问你最少要多少个数最多要多少个数 链接:https://codeforces.com/contest/1339/problem/D 思路: 以一个叶子节点为根跑一遍dfs,先考虑最少需要的数 阅读全文
摘要:
题目大意: 题意就是告诉你一个数n,然后给你n个数,每个数满足1<=a[i]<=200,让你求最大的子序列,子序列由x个a和y个b和x个a构成。 链接:https://codeforces.com/contest/1335/problem/E2 思路: 我们先用一个vector v记录1-200中每 阅读全文