12 2015 档案

摘要:可以用三维dp来保存状态,dp[i][j][k]表示在前i个字符变换了j步之后方向为k(k = 1 or k = 0)的最优解,也就是离原点的最大距离。这里规定0方向为正方向,1位负方向,表示的是当前这个人朝哪个方向。这两个方向是对立的。所以就可以递推一个关系式,分第i个字符为'F'or'T'时如果... 阅读全文
posted @ 2015-12-30 20:36 Howe_Young 阅读(618) 评论(1) 推荐(0)
摘要:之前求过LIS和LCS,这次求两者的综合问题。那么就需要用到这两个问题的思想。首先,用dp[i][j]表示str1和str2分别以i和j结尾的LCIS,那么对于str1[i] == str2[j]的时候,就要在1~j-1之间找到最优解,就是满足条件dp当中最大的一个,这个就是LIS的思想。如果不等的... 阅读全文
posted @ 2015-12-28 15:05 Howe_Young 阅读(1044) 评论(0) 推荐(0)
摘要:以下内容摘自acdreamer求欧拉函数值long long Euler(long long n){ long long ans = n; for (long long i = 2; i * i 1) ans = ans - ans / n; return ans;... 阅读全文
posted @ 2015-12-12 21:41 Howe_Young 阅读(293) 评论(0) 推荐(0)
摘要:题意:给一个排列的每个前缀区间的逆序对数,让还原 原序列。思路:考虑逆序对的意思,对于k = f[i] - f[i -1],就表示在第i个位置前面有k个比当前位置大的数,那么也就是:除了i后面的数字之外,它是在剩下的数字当中第k+1大的。知道这个之后,可以用树状数组来帮助找出剩下的数中第k大的数,刚... 阅读全文
posted @ 2015-12-10 16:16 Howe_Young 阅读(637) 评论(0) 推荐(0)