纯粹母函数+滚动数组,水之。

  1. /* 2386 */
  2. #include <iostream>
  3. #include <string>
  4. #include <map>
  5. #include <queue>
  6. #include <set>
  7. #include <stack>
  8. #include <vector>
  9. #include <algorithm>
  10. #include <cstdio>
  11. #include <cmath>
  12. #include <ctime>
  13. #include <cstring>
  14. #include <climits>
  15. #include <cctype>
  16. using namespace std;
  17.  
  18. const int maxn = ;
  19.  
  20. int cnt[];
  21. int score[];
  22. bool f[][maxn];
  23.  
  24. int main() {
  25. int i, j, k;
  26. int t, tt;
  27. int n, m;
  28. int ans, mx;
  29. int cur, pre;
  30.  
  31. #ifndef ONLINE_JUDGE
  32. freopen("data.in", "r", stdin);
  33. freopen("data.out", "w", stdout);
  34. #endif
  35.  
  36. scanf("%d", &tt);
  37. for (t=; t<=tt; ++t) {
  38. scanf("%d %d", &n, &m);
  39. memset(cnt, , sizeof(cnt));
  40. mx = ;
  41. for (i=; i<n; ++i) {
  42. scanf("%d", &k);
  43. mx = max(k, mx);
  44. ++cnt[k];
  45. ++cnt[k<<];
  46. ++cnt[(k<<)+k];
  47. }
  48. --cnt[(mx<<)+mx];
  49. for (n=i=; i<; ++i)
  50. if (cnt[i])
  51. score[n++] = i;
  52. memset(f, false, sizeof(f));
  53. f[][] = f[][] = true;
  54.  
  55. for (j=, cur=, pre=; j<=m; ++j, pre=cur, cur=!cur) {
  56. for (i=; i<=score[n-]*j; ++i) {
  57. for (k=; k<n; ++k) {
  58. if (f[pre][i] && i+score[k]<maxn)
  59. f[cur][i+score[k]] = true;
  60. }
  61. }
  62. }
  63. ans = ;
  64. for (i=; i<=score[n-]*m; ++i)
  65. if (f[pre][i])
  66. ++ans;
  67. printf("Scenario #%d:\n%d\n\n", t, ans);
  68. }
  69.  
  70. #ifndef ONLINE_JUDGE
  71. printf("%d\n", (int)clock());
  72. #endif
  73.  
  74. return ;
  75. }

【HDOJ】2386 Dart Challenge的更多相关文章

  1. 【HDOJ】4729 An Easy Problem for Elfness

    其实是求树上的路径间的数据第K大的题目.果断主席树 + LCA.初始流量是这条路径上的最小值.若a<=b,显然直接为s->t建立pipe可以使流量最优:否则,对[0, 10**4]二分得到 ...

  2. 【HDOJ】【3506】Monkey Party

    DP/四边形不等式 裸题环形石子合并…… 拆环为链即可 //HDOJ 3506 #include<cmath> #include<vector> #include<cst ...

  3. 【HDOJ】【3516】Tree Construction

    DP/四边形不等式 这题跟石子合并有点像…… dp[i][j]为将第 i 个点开始的 j 个点合并的最小代价. 易知有 dp[i][j]=min{dp[i][j] , dp[i][k-i+1]+dp[ ...

  4. 【HDOJ】【3480】Division

    DP/四边形不等式 要求将一个可重集S分成M个子集,求子集的极差的平方和最小是多少…… 首先我们先将这N个数排序,容易想到每个自己都对应着这个有序数组中的一段……而不会是互相穿插着= =因为交换一下明 ...

  5. 【HDOJ】【2829】Lawrence

    DP/四边形不等式 做过POJ 1739 邮局那道题后就很容易写出动规方程: dp[i][j]=min{dp[i-1][k]+w[k+1][j]}(表示前 j 个点分成 i 块的最小代价) $w(l, ...

  6. 【HDOJ】【3415】Max Sum of Max-K-sub-sequence

    DP/单调队列优化 呃……环形链求最大k子段和. 首先拆环为链求前缀和…… 然后单调队列吧<_<,裸题没啥好说的…… WA:为毛手写队列就会挂,必须用STL的deque?(写挂自己弱……s ...

  7. 【HDOJ】【3530】Subsequence

    DP/单调队列优化 题解:http://www.cnblogs.com/yymore/archive/2011/06/22/2087553.html 引用: 首先我们要明确几件事情 1.假设我们现在知 ...

  8. 【HDOJ】【3068】最长回文

    Manacher算法 Manacher模板题…… //HDOJ 3068 #include<cstdio> #include<cstring> #include<cstd ...

  9. 【HDOJ】【1512】Monkey King

    数据结构/可并堆 啊……换换脑子就看了看数据结构……看了一下左偏树和斜堆,鉴于左偏树不像斜堆可能退化就写了个左偏树. 左偏树介绍:http://www.cnblogs.com/crazyac/arti ...

随机推荐

  1. 【Android】知晓当前是哪一个活动

    首先需要新建一个 BaseActivity 继承自Activity,然后在 BaseActivity 中重写 onCreate()方法,如下所示:public class BaseActivity e ...

  2. J2EE入门必备

    1,J2EE是什么 J2EE(Java 2 platform Enterprise Edition)是软件平台,适于创建服务器端的大型应用软件和服务系统. J2EE适合开发大规模的业务系统,这种级别的 ...

  3. 利用Inltellj创建javadoc ,用jd2chm创建chm

    现在有些框架都不带javadoc 就需要自己去生成,而且真正用起来还是chm的最方便,所以写篇日志记录一下 下面我就拿struts2的源码来来举个栗子 1.第一步:创建一个空的java项目,导入框架源 ...

  4. 个人博客设计:创建Sql数据库操作类。

    整体的博客框架如下 数据库操作java类如下 package com.yxq.dao; import java.sql.Connection; import java.sql.DriverManage ...

  5. MSSQL生成整个数据库的SQL脚本的工具 scptxfr.exe

    scptxfr.exe的路径要正确declare @cMd varchar(1000)set @cmd = 'master.dbo.xp_cmdshell ' + '''c:\"Micros ...

  6. jQuery.each的function中有哪些参数(可以大概理解function中的参数问题)

    1.没有参数 $("img").each(function(){ $(this).toggleClass("example"); }); 1 2 3 2.有一个 ...

  7. Oracle数据库学习 视图、序列及存储过程

    视图(View) 视图也被称作虚表,也就是虚拟的表,是一组数据的逻辑表示. 视图对应一个select语句,结果集被赋予一个名字,也就是视图的名字. 视图本身不包含任何数据,它只是包含映射到基表的一个查 ...

  8. OC相关-02:oc和c的基本差异

    前言: 面向过程和面向对象. 简单的说,面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用. 面向对象是把构成问题事务分解成各个对象,建立对象的目的不 ...

  9. [LeetCode OJ] Largest Rectangle in Histogram

    Given n non-negative integers representing the histogram's bar height where the width of each bar is ...

  10. NoSql之Redis使用(一)

    一.安装 1.下载安装包: 官方网站:redis.io 官方推荐windows版本:https://github.com/MSOpenTech/redis 2:下载压缩包,解压后如下 redis-se ...