摘要: 你可以从任意起点开始起跳最多K次 每次跳你可以选择往右或者往下跳 从(x1,y1)跳到(x2,y2) 消耗的能量是曼哈顿距离-1 但是如果每次跳的起点和终点格子里的数字是相同的为X的话你会得到X能量 问你跳K次能不能把整个图刚好跳完(每个点被经过一次) 如果可以的话输出能量的最大值 解:和最小链覆盖 阅读全文
posted @ 2019-10-28 23:58 Aragaki 阅读(176) 评论(0) 推荐(0) 编辑
摘要: A.给你一个字符串 复制K-1次首尾相接 每次你可以把任意位置的字符替换成任意一个 问你最少替换几次可以使得复制后的串任意两个相邻的字符不同 解:一段长度为x的相同字符 要满足条件需要x/2次替换 #include<bits/stdc++.h> using namespace std; typede 阅读全文
posted @ 2019-10-28 23:01 Aragaki 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 给你一棵树 你可以取K条链 一条链为根到叶子的路径 问你K条链最多覆盖树上多少个节点 贪心的做 肯定是每次取最长链 但是取完最长链 一颗树就会变为若干个森林 我们要维护当前所有森林里的最长链 ans数组记录当前节点子树里的最长链长为多少 dfs到一个节点 就把除了最长链上的儿子的ans全部push到 阅读全文
posted @ 2019-10-28 19:20 Aragaki 阅读(428) 评论(0) 推荐(1) 编辑