2017icpc beijing-I题-Colored Nodes】的更多相关文章

题意 给定一个n个点m条边的无向图,一开始点i的颜色为i,在第i+kn秒开始时,与节点i相邻的节点会被染成i的颜色(k为自然数) 定义D(i,j)第j秒结束时颜色为i的节点个数,求: $F(i)=\lim_{n -> \infty }{1\over n}\sum_{j=1}^{n}D(i,j)$ 题解 首先模拟一轮染色过程,求出一轮下来,每个点最终会被染成开始时哪个点的颜色.这个染色结果是一个满射.将这个映射迭代无数次,就相当于染色无数轮.由于映射是满射,迭代的过程中,每个点的颜色会形成一个循环…
乘风破浪:LeetCode真题_025_Reverse Nodes in k-Group 一.前言 将一个链表按照一定的长度切成几部分,然后每部分进行翻转以后再拼接成一个链表是比较困难的,但是这也能锻炼我们的思维能力. 二.Reverse Nodes in k-Group 2.1 问题 2.2 分析与解决     最简单的想法,我们可以将链表分成几部分,每一个部分分开考虑,比如使用头插法,正好可以将顺序颠倒一下,或者我们通过某种方式使得顺序发生改变,然后再结合起来. /** * Definiti…
乘风破浪:LeetCode真题_024_Swap Nodes in Pairs 一.前言 这次还是链表的操作,不过我们需要交换链表奇数和偶数位置上的节点,因此要怎么做呢? 二.Swap Nodes in Pairs 2.1 问题      要求是不能修改节点的元素,并且使用的空间也是常数级别的,不能使用更高的内存空间. 2.2 分析与解决      通过分析我们可以使用简单的遍历算法,通过四个指针来解决,当然我们也可以使用递归算法来解答. 使用正常遍历算法: public class Solut…
problem: Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. If the number of nodes is not a multiple of k then left-out nodes in the end should remain as it is. You may not alter the values in the nodes,…
Problem: Given a linked list, swap every two adjacent nodes and return its head. For example,Given 1->2->3->4, you should return the list as 2->1->4->3. Your algorithm should use only constant space. You may not modify the values in the…
题意: 找出不能相互访问的点集的集合的元素数量. 思路: 偏序集最长反链裸题. 代码: #include<iostream> #include<cstring> using namespace std; ; int g[maxn][maxn]; int uN,vN; int linker[maxn]; bool used[maxn]; bool dfs(int u) { ; v < vN; v++) if(g[u][v] && !used[v]) { used…
题目 https://nanti.jisuanke.com/t/16958 题意 给定一个n(n<=500)个点的无向图,给每条边黑白染色,输出同色三角形最少的个数和对应的方案 分析 首先考虑给定一个染色完毕的无向图,如何求同色三角形的个数 同色三角形的个数=总的个数-异色三角形的个数 而一个异色三角形对应两个异色角,所以我们可以通过算异色角的个数来计算异色三角形的个数 而异色角是有一个固定的点i引出去的n-1条边所决定的 设某个点i有$x_i$条1边,有$n-1-x_i$条2边 可以发现异色角…
https://www.cnblogs.com/2462478392Lee/p/11650548.html https://www.cnblogs.com/2462478392Lee/p/11650154.html https://www.cnblogs.com/2462478392Lee/p/11648061.html…
Destroying the bus stations                                                                                     Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)                                                       …
以下是个人对所做过的LeetCode题中有关链表类型题的总结,博主小白啊,若有错误的地方,请留言指出,谢谢. 一.有关反转链表 反转链表是在单链表题中占很大的比例,有时候,会以各种形式出现在题中,是比较重要的知识点. (1)题Reorder list中,思路为将链表一分为二,将后者反转以后,然后两链表交叉连接起来即可,这里值得注意的有:链表一分为二以后,前半段的链表最后要指向NULL,以形成两单链表的交叉链接的情况:另外一点是,当链表个数为奇数时,以快慢指针形式分割的链表,后半段的个数会多一个,…