摘要:
"题目链接" 题目大意:给你一个邻接矩阵和每个点的权值,问你任意两点的最短路的花费以及路径。 这个题途中经过某个点收费很好处理,只要在松弛的时候加上中间点的权值即可,但是打印路径就有些麻烦了。因为是多源最短路问题,所以我们不能像单源最短路那样用一维的数组来存前驱/后驱来打印路径了。 我们可以用一个二 阅读全文
摘要:
[题目链接](https://vjudge.net/contest/364766 problem/C) 题目大意:每两个点之间只有一条边表示两点关系,关系具有传递性,问有多少点对之间没有关系。 这题利用了传递闭包来解。我们根据题目输入可以得到一条$a b$的边,表示$a$赢$b$,那么反过来我们也可 阅读全文
摘要:
"题目链接" 题目大意:给你一个加权图,里面有m个无向正权边和w个单向负边,判断有没有负环。 floyd可以求两点之间的最短路,如果两个点一样,即是一个环,判断图中环的大小是不是负即可。 阅读全文
摘要:
"题目链接" 在普通的floyd的第一重循环内加上的一段代码,求3点形成的最小环,这题有个坑点是因为会加三个变量, INF小心开太大爆int。 阅读全文
摘要:
"题目链接" 根据题意照做就行了,不过需要注意的一点是,当栈为空时(不论是初始状态还是经过pre),当前列表的歌曲是歌曲1,所以在摁next的时候会播放第二首歌曲。 阅读全文
摘要:
"题目链接" 题目大意:让你找出一列数,他们中相邻的两个数的下标之差等于数值之差。求这列数的最大值 思路很简单,因为所得数列满足相邻的两个数的下标之差等于数值之差。所以只要让每个输入的数减去对应的下标所得到的下标指向的数加上这个数即可,如果两个数的下标之差等于数值之差,那么它们各自的数减去下标所得到 阅读全文
摘要:
"题目链接" 题目大意:让你从$m$个数里面挑出来若干个数构成一个$n$个数的序列,且这个序列有且仅有一对相等的数。并且,这个序列在一个数字之前严格单调递增,在同一个数字之后严格单调递减。问你最多能组成多少个这样的序列。 首先,题目已经告诉我们了,我们要求的序列是一个单峰序列,所以如果$n=2$的话 阅读全文
摘要:
"题目链接" 题目大意:给你俩数$u$和$v$,问你是否能找出来最短的一列数,使它们的和为$v$,异或值为$u$。 这题主要是考察对位运算的理解。 1.首先,位运算是不存在进位的,所以位运算的结果只会比原来的和小,也就是说$u$绝对不会大于$v$。 2.如果异或后的结果是奇数的话,那么这列数里面奇数 阅读全文
摘要:
"题目链接" 题目大意:让你找出所有$ai+aj bi+bj$(i j) 其实这题不用在意$i j$只要把$i\neq j$并且符合条件的一对数记做一个答案就行了。。。(显然通过$i和j$交换必有$i j$)。然后我们把$ai+aj bi+bj$变形可得$(ai bi)+(aj aj) 0$所以我们 阅读全文
摘要:
"题目链接" 题目大意:给你一个数字$n$,问你在$000...000$到$999...999$($10^{n 1}$位)里面长度为$1,2...n$里的块有多少(相等的连续子段算一块)。 我们可以尝试构造出长度为i的块,对于一个长度为i的块来说: 1.若它在数字的边缘,那么它右边(或左边)的第一个 阅读全文