zoukankan      html  css  js  c++  java
  • hdu 4810 Wall Painting

    http://acm.hdu.edu.cn/showproblem.php?pid=4810

    把每一个数转化二进制,然后统计n个数在每一位的1的个数。奇数个1异或才能得1,然后用组合数,计算。

     1 #include <cstdio>
     2 #include <cstring>
     3 #include <algorithm>
     4 using namespace std;
     5 const int mod=1000003;
     6 
     7 int n;
     8 __int64 a[1100],num[1100],c[1100][1100],ans[1100];
     9 
    10 void inti()
    11 {
    12     for(int i=0; i<1100; i++)
    13     {
    14          c[i][0]=1;
    15          for(int j=1; j<=i; j++)
    16          {
    17              c[i][j]=(c[i-1][j-1]+c[i-1][j])%mod;
    18          }
    19     }
    20 }
    21 
    22 int main()
    23 {
    24     inti();
    25     while(scanf("%d",&n)!=EOF)
    26     {
    27         memset(num,0,sizeof(num));
    28         memset(ans,0,sizeof(ans));
    29         for(int i=1; i<=n; i++)
    30         {
    31             scanf("%I64d",&a[i]);
    32         }
    33         for(int i=0; i<=30; i++)
    34         {
    35             for(int j=1; j<=n; j++)
    36             {
    37                 if(a[j]&(1<<i)) num[i]++;
    38             }
    39         }
    40         for(int i=0; i<=30; i++)
    41         {
    42             for(int j=1; j<=n; j++)
    43             {
    44                 __int64 x=n-num[i];
    45                 if(num[i]==0) continue;
    46                 for(int k=1; k<=num[i]; k+=2)
    47                 {
    48                     if(j-k<=x&&j>=k)
    49                     {
    50                         ans[j]+=((c[num[i]][k]*c[x][j-k]%mod)*(1<<i))%mod;
    51                         ans[j]%=mod;
    52                     }
    53                 }
    54             }
    55         }
    56         printf("%I64d",ans[1]);
    57         for(int j=2; j<=n; j++)
    58         {
    59             printf(" %I64d",ans[j]);
    60         }
    61         printf("
    ");
    62     }
    63     return 0;
    64 }
    View Code
  • 相关阅读:
    c3p0用c3p0-config.xml方式配置 和 用spring配置时一点小区别
    mysql配置
    tomcat监控工具Probe
    tomcat配置
    jsp页面动态包含和静态包含
    servlet3的文件上传
    System.currentTimeMillis()和new Date().getTime()比较
    js-html2canvas导出html图片 导出pdf
    html中使用富文本编辑器
    Vue----vue-resource
  • 原文地址:https://www.cnblogs.com/fanminghui/p/4035285.html
Copyright © 2011-2022 走看看