摘要:
1.堆排序是一种优秀的排序算法,时间复杂度O(nlogn),主要思想是用数组构造一个最大堆,满足跟节点的value>子节点的value,然后将堆顶元素(value最大)与最后一个叶子节点交换,再调整堆,使其满足最大堆的性质,重复上述步骤n-1次后就得到一个有序序列。#include#include#... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(303)
评论(0)
推荐(0)
摘要:
思路:dp[i]表示所求答案,则dp[pos[str[i]-'a']] = min(dp[pos[str[i]-'a']], i - pos[str[i]-'a']) ; dp[i] = i - pos[str[i]-'a'];pos 记录与当前字母相同的且离当前位置最近的字母的位置。/*USER_... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(341)
评论(0)
推荐(0)
摘要:
思路:深度优先搜索,一层一层由子节点向跟节点回溯。1.#include#include#include#include#define MAX 11111using namespace std;int Three_Max[MAX][15], val[MAX], cnt[MAX];typedef str... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(134)
评论(0)
推荐(0)
摘要:
#include#include#include#include#define MAX 1111using namespace std;long long int dp[MAX], temp[MAX], ans;int main(){ int n; while(~scanf("%d", ... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(69)
评论(0)
推荐(0)
摘要:
思路:dp[i][j]表示str1的第i-1个字符和str2的第j-1个字符的最大的LCS,str[i-1] == str[j-1]时,dp[i][j] = dp[i-1][j-1] + 1 ; else : dp[i-1][j-1] = max(dp[i-1][j],dp[i][j-1]) .#i... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(106)
评论(0)
推荐(0)
摘要:
思路:设dp[i][j]表示区间[i,j]的回文串的个数,那么有dp[i][j] = dp[j+1][i] + dp[j][i-1] - dp[j+1][i-1],如果str[i] == str[j],那么dp[i][j]还要加上dp[j+1][i-1] + 1;#include#include#i... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(123)
评论(0)
推荐(0)
摘要:
去年刚学acm时写了一道大数A+B,现在无聊回头看看发现当时写的太屎太长,所以顺便写个精简点的:#include#includeusing namespace std;string s1, s2;int main(){ while(cin >> s1 >> s2){ int j ... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(118)
评论(0)
推荐(0)
摘要:
思路:DP水,先排序,然后直接比较。#include#include#include#include#include#define MAX 1111using namespace std;class mouse{ public: int w, v, id; bool... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(84)
评论(0)
推荐(0)
摘要:
思路:openclock[i]记录到i位置打开大写键时的最小按键次数,closeclock[i]记录到i位置时不打开大写键时最小按键次数,详见代码。#include#include#include#include#define MAX 111using namespace std;int close... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(108)
评论(0)
推荐(0)
摘要:
思路:DP水题#include#include#include#define MAX 105using namespace std;int dp[MAX][MAX], a[MAX][MAX];int main(){ int c, n, maxn; /* freopen("in.c", "... 阅读全文
posted @ 2014-04-30 18:38
wangzhili
阅读(76)
评论(0)
推荐(0)
浙公网安备 33010602011771号