首先认识一下01邻接矩阵k次幂的意义:经过k条边(x,y)之间的路径条数 所以可以把矩阵当成邻接矩阵,全是>0的话意味着两两之间都能相连,也就是整个都要在一个强连通分量里,所以直接tarjan染色,如果只有一个色块的话就是YES否则都是NO(其实应该能更简单一些,不过tarjan比较顺手) 还有就是我没仔细看题判了对角巷为0就NO结果WA-- #include<iostream> #include<cstdio> using namespace std; const int…
首先转换图论模型,把某个客户一个终端的维修时间(+1)%h之后和另一个终端维修时间一样,这样的两个终端连一条有向边,表示推后一个终端就必须推后另一个 然后tarjan缩点,一个scc里的终端是要一起推迟的,scc内点数为新图点权 根据贪心的思想,在缩完点的DAG里,一定是出度为0的点能获得更小的值,因为出度不为零的点还要加上出边所能到的点的点权 直接在出度为0的点里取min,然后记一下更新答案的新点,最后把属于这个新点的点的编号输出即可 #include<iostream> #include&…
E. Strictly Positive Matrix   You have matrix a of size n × n. Let's number the rows of the matrix from 1 to n from top to bottom, let's number the columns from 1 ton from left to right. Let's use aij to represent the element on the intersection of t…
Strictly Positive Matrix 题解: 如果原来的 a[i][j] = 0, 现要 a[i][j] = 1, 那么等于 sum{a[i][k] + a[k][j]} > 1. 如果把a[i][j]视作 i -> j 是否能达到. 那么对于上述的那个方程来说,相当于 i先走到k, k再走到j. 单向边. 所以化简之后,就是询问一幅图是不是只有一个强连通缩点. 代码: #include<bits/stdc++.h> using namespace std; #defi…
28. Search a 2D Matrix [easy] Write an efficient algorithm that searches for a value in an mx n matrix. This matrix has the following properties: Integers in each row are sorted from left to right. The first integer of each row is greater than the la…
[CodeForces - 1225E]Rock Is Push [dp][前缀和] 标签:题解 codeforces题解 dp 前缀和 题目描述 Time limit 2000 ms Memory limit 524288 kB Source Technocup 2020 - Elimination Round 2 Tags binary search dp *2200 Site https://codeforces.com/problemset/problem/1225/E 题面 Examp…
B. Complete the Word time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output ZS the Coder loves to read the dictionary. He thinks that a word is nice if there exists a substring (contiguous segmen…
又名NTR的故事 [题目大意] n对夫妻Bi和Gi.若某男Bi与某女Gj曾经交往过,他们有私奔的可能性.不妨设Bi和Gj旧情复燃,进而Bj会联系上了他的初恋情人Gk,以此递推.若在Bi和Gi离婚的前提下,这2n个人最终依然能够结合成n对情侣,那么我们称婚姻i为不安全的,否则婚姻i就是安全的.问n对夫妻的婚姻分别是安全的吗? [思路] 第一反应是匈牙利算法,但是太过于暴力了,过不了. 我们把夫妻中女方连向男方,旧情中男方连向女方.可以得出结论:如果该有向图的强连通分量中,夫妻双方在同一个强连通分量…
任意门:http://codeforces.com/contest/1118/problem/C C. Palindromic Matrix time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Let's call some square matrix with integer values in its cells palind…
题意:给出一个矩形的三种操作,顺时针旋转,逆时针旋转,对称,给出原始坐标,再给出操作数,问最后得到的坐标 画一下模拟一下操作就可以找到规律了 #include<iostream> #include<cstdio> #include<cstring> #include <cmath> #include<stack> #include<vector> #include<map> #include<set> #inc…