摘要:
FoxesOfTheRoundTable题意:给你一个序列,让你生成一个排列,并且这个排列是循环的。使得任意两个相邻数的差的最大值尽量小。题解:先排个序,然后从小到大逐个插入。这时容易发现,若要得到最优的策略,只能将现在的这个数插在当前排列中最大的那个数的旁边,这是因为,要插入的这个数是大于当前排列... 阅读全文
摘要:
原题链接:http://codeforces.com/contest/580/problem/D题意:给你一些一个有向图,求不超过m步的情况下,能获得的最大权值和是多少,点不能重复走。题解:令$dp[u][s]$为在节点u的时候状态是s的最大值。利用spfa的松弛操作来转移。代码:#include#... 阅读全文
摘要:
原题链接:题意:给你一棵有根树,某些节点的权值是1,其他的是0,问你从根到叶子节点的权值和不超过m的路径有多少条。题解:直接dfs一下就好了。代码:#include#include#include#include#define MAX_N 100005using namespace std;vect... 阅读全文
摘要:
原题链接:http://codeforces.com/contest/580/problem/B题意:给你一个集合,集合中的每个元素有两个属性,$m_i,s_i$,让你求个子集合,使得集合中的最大m的差不超过d的情况下,s的和的最大值。题解:先排序,然后对于a[i],直接二分a[i].s+d的位置,... 阅读全文
摘要:
原题连接:http://codeforces.com/contest/580/problem/A题意:给你一个序列,问你最长不降子串是多长?题解:直接模拟就好了代码:#includeusing namespace std;int n;int main() { cin.sync_with_std... 阅读全文
摘要:
题意:一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. QMAX u v: 询问从点u到点v的路径上的节点的最大权值 III. QSUM u v: 询问从点u到点v的路径上的节... 阅读全文
摘要:
VerySecureEncryption 模拟题意:给你个串message,然后一个置换key,输出置换K次后的结果。题解:直接模拟就好。代码:#include#include#include#includeusing namespace std;class VerySecureEncryption... 阅读全文
摘要:
原题连接:http://poj.org/problem?id=3041AsteroidsTime Limit:1000MSMemory Limit:65536KTotal Submissions:17985Accepted:9798DescriptionBessie wants to navigat... 阅读全文
摘要:
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=4081Qin Shi Huang's National Road SystemTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768... 阅读全文
摘要:
ABBADiv1题意:规定两种操作,一种是在字符串的末尾添加A,另一种是在末尾添加B然后反转字符串。现在给你一个起始串,一个终点串,然后问你是否能够通过以上两种操作,从起始串变为终点串。题解:将问题反过来考虑,那么问题就变为了是否能够从终点串变为起始串。令起始串为s,终点串为t。首先考虑串t就是串s... 阅读全文