hdu 4810 Wall Painting
先将每个数字 转成二进制; 然后统计每一位在N个数字中有多少个 1 然后知道 组合中 1 的个数为奇数个时需要加上(i<<i); 然后就是简单的模拟了
#include<iostream>
#include<stdio.h>
#include<cstring>
#include<algorithm>
#include<cmath>
#define mod 1000003
using namespace std;int N; __int64 arr[1123],num[1123],res[1123],pre[1123][1123];
int main( )
{for( int i = 0; i < 1123; i++ ){pre[i][0] = 1;for( int j = 1; j <= i; j++ )pre[i][j] = (pre[i-1][j-1]+pre[i-1][j])%mod;}while( scanf("%d",&N) != EOF ){memset( num,0,sizeof(num) );memset( res,0,sizeof(res) );for( int i = 1; i <= N; i++ )scanf("%I64d",&arr[i]);for( int i = 0; i <= 30; i++ )for( int j = 1; j <= N; j++ ){if( (arr[j]&(1<<i)) != 0 )num[i]++;}for( int i = 0; i <= 30; i++ )for( int j = 1; j <= N; j++ ){__int64 a = N - num[i]; if( num[i] == 0 )continue;for( int k = 1; k <= num[i]; k += 2 ){if( j - k <= a )res[j] += (((pre[num[i]][k]*pre[a][j-k])%mod)*(1<<i))%mod;res[j] %=mod;}}printf("%I64d",res[1]);for( int i = 2; i <= N; i++ )printf(" %I64d",res[i]);cout<<endl;}return 0;
}
转载于:https://www.cnblogs.com/wulangzhou/p/3452621.html
hdu 4810 Wall Painting相关推荐
- HDU 1348 Wall ( 凸包周长 )
链接:传送门 题意:给出二维坐标轴上 n 个点,这 n 个点构成了一个城堡,国王想建一堵墙,城墙与城堡之间的距离总不小于一个数 L ,求城墙的最小长度,答案四舍五入 思路:城墙与城堡直线长度是相等的, ...
- hdu 1348 wall
题意:给出二维坐标轴上 n 个点,这 n 个点构成了一个城堡,国王想建一堵墙,城墙与城堡之间的距离总不小于一个数 L,求城墙的最小长度,答案四舍五入. 思路:城墙与城堡直线长度是相等的,当城堡出现拐角 ...
- 区域赛铜牌专题(一)
区域赛铜牌专题 题号 题目 知识点 HDU 5532 Almost Sorted Array 贪心,LIS HDU 5533 Dancing Stars on Me HDU 5536 Chip Fac ...
- 2013_nanjing_onsite
4802 GPA 签到题目. 4803 Poor Warehouse Keeper 优先考虑增长较快的上键,贪心即可. 4804 Campus Design 插头dp,加一维表示1*1的个数. 480 ...
- 组合数学 —— 组合数
[概念] 1.组合 从 n 个元素的集合 S 中,无序的选出 r 个元素,叫做 S 的一个 r 组合. 如果两个组合中,至少有一个元素不同,它们就被认为是不同的组合. 2.不可重组合数 所有不同组合的 ...
- 杭电OJ分类题目(3)
原题出处:HDOJ Problem Index by Type,http://acm.hdu.edu.cn/typeclass.php 杭电OJ分类题目(3) HDU Computational Ge ...
- 人工智能/数据科学比赛汇总 2019.8
内容来自 DataSciComp,人工智能/数据科学比赛整理平台. Github:iphysresearch/DataSciComp 本项目由 ApacheCN 强力支持. 微博 | 知乎 | CSD ...
- 人工智能/数据科学比赛汇总 2019.9
内容来自 DataSciComp,人工智能/数据科学比赛整理平台. Github:iphysresearch/DataSciComp 本项目由 ApacheCN 强力支持. 微博 | 知乎 | CSD ...
- 2013ACM/ICPC亚洲区南京站现场赛——题目重现
D - Wall Painting 题意:给你n个数,第i天(i属于[1,n])从n个数中选择i个数,进行异或.对于所有情况得到的数进行求和,即为第i天所得到的答案.输出从第1-n天的答案 思路:对于 ...
最新文章
- php swoole编译,编译安装swoole1.7.9,PHP版本5.6.5
- 如何用简单的词语和用法解释Katana和OWIN?
- vba可以放服务器上处理文档,vba 用服务器运行 内存溢出
- 整理javascript操作文件说明.
- python bytes转换为string_Python3 中 bytes 和 string 之间的互相转换
- leetcode-卡车加气走环
- Python 实现的下载op海贼王网的图片(网络爬虫)
- JavaScript中String的replace函数
- 基于springboot人事管理系统设计与实现
- C语言图书查询号系统,C语言图书查询系统.doc
- win10系统的电脑如何录屏?QVE录屏大师使用教程?
- 计算机上可以插键盘吗,电脑外接键盘好用吗 哪些键盘可以外接电脑使用
- Php-SPL库中的迭代器类详解
- 625线,525线什么意思?
- 良心,是黑暗里的一盏灯
- 浏览器地址栏输入url到显示主页的过程
- 基于OpenCV的音频频谱优化(仿酷狗频谱)
- windows10安装SQL server 2008 R2
- linux 查询usb端口名称,在Linux系统里识别USB设备名字的4种方法
- 怎么对网站进行外部优化