zoukankan      html  css  js  c++  java
  • 【POJ

    Ant Counting

    直接翻译了

    Descriptions

    贝西有T种蚂蚁共A只,每种蚂蚁有Ni只,同种蚂蚁不能区分,不同种蚂蚁可以区分,记Sum_i为i只蚂蚁构成不同的集合的方案数,问Sum_k(S≤k≤B)之和。Input第一行4个整数T、A、S、B。 接下来A行,每行一个整数,代表这只蚂蚁的种类。Output输出Sum_k(S≤k≤B)之和。 (数据范围见原文)

    Sample Input

    3 5 2 3
    1
    2
    2
    1
    3

    Sample Output

    10

    题目链接

    https://vjudge.net/problem/POJ-3046

    白书69页

    参考我学长的博客

    https://blog.csdn.net/a1097304791/article/details/90371914

    AC代码

    #include <iostream>
    #include <cstdio>
    #include <fstream>
    #include <algorithm>
    #include <cmath>
    #include <deque>
    #include <vector>
    #include <queue>
    #include <string>1
    #include <cstring>
    #include <map>
    #include <stack>
    #include <set>
    #include <sstream>
    #define IOS ios_base::sync_with_stdio(0); cin.tie(0);
    #define Mod 1000000007
    #define eps 1e-6
    #define ll long long
    #define INF 0x3f3f3f3f
    #define MEM(x,y) memset(x,y,sizeof(x))
    #define Maxn 100005
    using namespace std;
    int T,A,S,B;
    int dp[1005][Maxn];
    int c[Maxn];
    int M=1000000;//对M取余
    int main()
    {
        cin>>T>>A>>S>>B;
        for(int i=0;i<A;i++)
        {
            int x;
            cin>>x;
            c[x]++;
        }
        for(int i=0;i<=T;i++)
            dp[i][0]=1;
        for(int i=1;i<=T;i++)
        {
            for(int j=1;j<=A;j++)
            {
                if(j-1-c[i]>=0)
                    dp[i][j]=(dp[i][j-1]+dp[i-1][j]-dp[i-1][j-1-c[i]]+M)%M;
                else
                    dp[i][j]=(dp[i][j-1]+dp[i-1][j]+M)%M;
            }
        }
        int ans=0;
        for(int i=S;i<=B;i++)
            ans=(ans+dp[T][i]+M)%M;
        cout<<ans<<endl;
        return 0;
    }
  • 相关阅读:
    CentOS 用命令访问网页
    ngalian(一)2:安装npm环境
    数仓建设原则探讨
    C#中获取系统时间 LZU
    判断是否是数字类 LZU
    Extjs中ComboBoxTree的实现 LZU
    SQL之学生选课数据库 LZU
    如何看书 LZU
    面向对象思想 LZU
    C#控件命名规范 LZU
  • 原文地址:https://www.cnblogs.com/sky-stars/p/11341756.html
Copyright © 2011-2022 走看看