上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 20 下一页
摘要: 题目大意:有n(n 2 #include 3 using namespace std; 4 5 int dp[110][25100]; 6 int a[110]; 7 int main() 8 { 9 #ifdef LOCAL10 freopen("in", "r", stdin);11 #endif12 int T;13 scanf("%d", &T);14 while (T--)15 {16 int n;17 scanf("%d", &n);18 int sum = 0;19 ... 阅读全文
posted @ 2013-09-06 15:18 xiaobaibuhei 阅读(286) 评论(0) 推荐(0)
摘要: 题目大意:给你一系列数,找出它的最长(严格)递增子序列。 由于数据量较大,使用O(n2)的LIS算法会超时,要使用O(nlogn)的LIS算法,这里有详细的介绍。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 typedef vector vi; 7 8 vi v, temp, pos, ans; 9 10 int main()11 {12 #ifdef LOCAL13 freopen("in", "r", stdin);14 #endif15 int x;16 阅读全文
posted @ 2013-09-05 20:59 xiaobaibuhei 阅读(234) 评论(0) 推荐(0)
摘要: 题目大意:给你n只老鼠的体重w和速度s,让你找出最长的子序列使得w[i] s[j] (i 2 #include 3 using namespace std; 4 5 struct Mouse 6 { 7 int id, w, s; 8 bool operator m.s;12 }13 } mouse[1100];14 int lis[1100], pre[1100];15 16 void print_lis(int p)17 {18 if (pre[p] != -1) print_lis(pre[p]);19 printf("%d\n",... 阅读全文
posted @ 2013-09-05 15:39 xiaobaibuhei 阅读(376) 评论(0) 推荐(0)
摘要: 题目大意:我们的朋友Bob要结婚了,所以要为他买一些衣服。有m的资金预算,要买c种类型的衣服(衬衫、裤子等),而每种类型的衣服有k个选择(只能做出一个选择),每个选择的衣服都有一个价格,问如何选择才能使花费控制在预算范围内并使得花费尽量大?输出最大花费。 用dp进行解决,bool dp[i][j]用以表明在买完第i种类型的衣服后是否可能有j的资金剩余。递推至dp[c][],找出dp[c][]中最小的资金剩余。 1 #include 2 #include 3 #include 4 using namespace std; 5 6 struct Garment 7 { 8 i... 阅读全文
posted @ 2013-09-05 11:17 xiaobaibuhei 阅读(323) 评论(0) 推荐(0)
摘要: 题目大意:竞赛用自行车前轮有f个齿轮,后轮有r个齿轮,根据比率计算一个spread(传播率?)。 很直接的题,排序然后找商的最大值就好了,uhunt上标明level 4,我都不敢相信会这么简单,还一直在担心值重复的问题呢。 1 #include 2 #include 3 using namespace std; 4 5 int main() 6 { 7 #ifdef LOCAL 8 freopen("in", "r", stdin); 9 #endif10 int f, r;11 int front[12], rear[12];12 double r.. 阅读全文
posted @ 2013-09-04 19:00 xiaobaibuhei 阅读(172) 评论(0) 推荐(0)
摘要: 题目大意:八皇后问题,在一个8*8的棋盘上,放置8个皇后,使得任意两个皇后不在同一行上、不在同一列上、不在同一条对角线上,不过这道题预先给定了一个位置放置一个皇后,让你输出所有可能的答案。 经典的回溯问题,具体可参考《算法竞赛入门经典》7.4.1,不过这道题对输出的要求说的挺模糊的,要特别注意输出的格式。开始不知道,就WA了一次... 1 #include 2 #include 3 #define N 8 4 5 bool vis[3][2*N]; 6 int r, c, kase; 7 int ans[N]; 8 9 void search(int cur)10 {11 ... 阅读全文
posted @ 2013-09-04 16:59 xiaobaibuhei 阅读(966) 评论(0) 推荐(0)
摘要: 题目大意:给你一个数n(2 2 #include 3 4 bool vis[10]; 5 char str[15]; 6 7 bool check(int a, int b) 8 { 9 sprintf(str, "%05d%05d", a, b);10 memset(vis, 0, sizeof(vis));11 for (int i = 0; i < 10; i++)12 {13 if (vis[str[i]-'0']) return false;14 vis[str[i]-'0'] = true;15 ... 阅读全文
posted @ 2013-09-04 15:22 xiaobaibuhei 阅读(1461) 评论(0) 推荐(0)
摘要: 题目大意:给一个由单词组成的句子,只反转单词内部的次序而不改变单词之间的次序。如“I love you.”转换成“I evol .uoy”。 1 #include 2 #include 3 4 int main() 5 { 6 #ifdef LOCAL 7 freopen("in", "r", stdin); 8 #endif 9 int s, e;10 char str[100000];11 while (gets(str))12 {13 bool in_word = false;14 int len = st... 阅读全文
posted @ 2013-09-03 20:40 xiaobaibuhei 阅读(279) 评论(0) 推荐(0)
摘要: 题目大意:关于acm竞赛排名的题目,对于参赛者首先按做出的题目排名,然后是罚时,最后是编号。 多关键字域排序问题。 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 struct Cont 9 {10 int id, num, t_penalty;11 int penalty[10];12 bool solved[10], join;13 bool operator c.num;16 if (t_penalty !... 阅读全文
posted @ 2013-09-02 22:22 xiaobaibuhei 阅读(336) 评论(0) 推荐(0)
摘要: 题目大意:给出计算机之间的连接配置,询问某两台计算机是否相连。判断两个点是否在同一个连通分量里,用并查集处理。 1 #include 2 #define MAXN 1000000 3 4 int p[MAXN]; 5 6 int find(int x) 7 { 8 return (x == p[x]) ? x : p[x] = find(p[x]); 9 }10 11 int main()12 {13 #ifdef LOCAL14 freopen("in", "r", stdin);15 #endif16 int T;17 scanf("%d& 阅读全文
posted @ 2013-09-01 19:58 xiaobaibuhei 阅读(313) 评论(0) 推荐(0)
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 20 下一页