摘要:
思路 这题的意思是,如果丢失一个城市会导致其他的城市分裂,就发出红色警报。 也就是说如果某块联通的城市,假设其中的某个节点A是中心节点,如果城市A失陷,那么其他城市将不再联通,这样输出红色警报。 每次都跑一遍并查集看看有几个不同的联通块,即使每个点都失陷,最大的复杂度也不超过2500000(2.5 阅读全文
摘要:
思路 这题非常像是最长上升子序列,这题为什么这么写我也说不上来,我们把队列建成递增子序列,这样每次拿新数和各队列尾最小值比较,如果小于队列尾部的最小值就可以放入这个队列。 这样做的道理,简单来说就是如果没有一个小的数挡住大的数,那么我们就可以按照题目的要求输出一个队列。 代码 阅读全文
摘要:
思路 注意读入和输出格式 如果用fgets读入的话会带上回车,输出的时候一定不要输出了双回车 并且此时的length也会比原始长度多了一,要注意长度比较,这里容易出错 代码 阅读全文
摘要:
思路 这题不用题解吧 代码 阅读全文
摘要:
思路 这题代码长,其实只是懒,没有把重复的代码写成函数。 只用建堆,循环判断就可以了。 循环判断是为了避免数的重复,判断每一中可能的情况是否为真。 代码 阅读全文
摘要:
这个太简单了,没有题解。 阅读全文