zoukankan      html  css  js  c++  java
  • [BZOJ1307][ZJOI2008]生日聚会PARTY

    ...一开始用了三维的...甚至尝试把它搞成二维的...后来发现根本没法转移呀...

    既然dalao说这是初中题,那它就算是一道初中题吧...

    dp[i][j][k][p]表示当前有i个男生j个女生,男生比女生k个,女生比男生多p个

    然后就没有然后了...

     1 #include<cstdio>
     2 #include<queue>
     3 #include<iostream>
     4 #include<cstring>
     5 #define Ha 12345678
     6 using namespace std;
     7 inline int abs(int x){if(x>0) return x;return -x;}
     8 inline int read(){
     9     int ans=0,f=1;char chr=getchar();
    10     while(!isdigit(chr)){if(chr=='-') f=-1;chr=getchar();}
    11     while(isdigit(chr)){ans=(ans<<3)+(ans<<1)+chr-48;chr=getchar();}
    12     return ans*f;
    13 }int n,m,K,f[155][155][25][25],ans;
    14 int main(){
    15 //    freopen("1037.in","r",stdin);
    16 //    freopen("1037.out","w",stdout);
    17     n=read(),m=read(),K=read();
    18     f[0][0][0][0]=1;
    19     for(int i=0;i<=n;i++)for(int j=0;j<=m;j++)for(int k=0;k<=K;k++)for(int p=0;p<=K;p++)
    20     f[i+1][j][k+1][max(p-1,0)]=(f[i+1][j][k+1][max(p-1,0)]+f[i][j][k][p])%Ha,f[i][j+1][max(k-1,0)][p+1]=(f[i][j+1][max(k-1,0)][p+1]+f[i][j][k][p])%Ha;
    21     for(int i=0;i<=K;i++)for(int j=0;j<=K;j++)
    22         ans=(ans+f[n][m][i][j])%Ha;
    23     return cout<<ans,0;
    24 }
  • 相关阅读:
    LUA 数据比较BUG?????是不是BUG大佬帮看看
    win10 优化批处理
    android Studio 二维码扫一扫 使用精简过的zxing
    AppCompatActivity 去除标题栏
    java 继承 重写 重载 super关键字
    java构造方法私有化
    java代码块的理解
    java 理解main方法
    java面向对象基础static
    docker 安装 nginx
  • 原文地址:https://www.cnblogs.com/zhenglw/p/10559624.html
Copyright © 2011-2022 走看看