摘要: 题意:给定一个长度为2^N的序列和N个操作,每个操作i为将2^N分为2^(N-i+1)段,然后任意交换其中两段,求有多少种不同的交换方案使得序列升序 题解: 由于一个合法的方案中,交换操作的先后顺序,方案依然合法,所以我们只需要确定使用哪些操作。 按i的大小从小到大枚举每一个操作i,然后将序列分为2 阅读全文
posted @ 2017-03-11 22:47 WDZRMPCBIT 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一棵树,求这棵树直径的长度和所有直径有多少个公共点。 题解:求直径感觉DFS比BFS好写太多,但是大数据本地爆栈OJ却不爆……思路和BFS版的差不多,第一问是个裸题。因为书中任意两点间有且仅有一条路径,所以所有直径的公共点一定是连续的一段。我们从左向右枚举直径上所有点,如果一个点到直径外一 阅读全文
posted @ 2017-03-11 18:41 WDZRMPCBIT 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一棵树,求树上一条长度不大于S的路径,使得树上所有点到该路径的最大距离最小。 题解: 首先,所求路径一定在树的直径上,否则我们总可以用树的直径来扩展出更大的最大距离。 设fi为i为路径左端点时,直径的右端点到i的距离;gi为i为路径右端点时,直径的左端点到i的距离;hi为i的与直径没有交集 阅读全文
posted @ 2017-03-11 17:22 WDZRMPCBIT 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个N*M数字矩阵,求一个全1矩阵,使得该矩阵在经过复制后,在满足每次放置的位置不存在0的情况下,放置的矩阵数最少,求最少次数。 题解:由于数据很小所以可以暴力枚举所求矩阵的长和宽然后检验。由于所求矩阵的大小一定是所有数和的因数,然后矩阵越大放的次数就越少,所以倒序枚举。 #include 阅读全文
posted @ 2017-03-11 16:18 WDZRMPCBIT 阅读(133) 评论(0) 推荐(0) 编辑