班服(C++)

班服
难度级别:C; 运行时间限制:1000ms; 运行空间限制:256000KB; 代码长度限制:2000000B

试题描述

要开运动会了,神犇学校的n个班级要选班服,班服共有100种样式,编号1~100。现在每个班都挑出了一些样式待选,每个班最多有100个待选的样式。要求每个班最终选定一种样式作为班服,且该班的样式不能与其他班级的相同,求所有可能方案的总数,由于方案总数可能很大,所以要求输出mod 1000000007后的答案。


输入

共有T组数据。
对于每组数据,第一行为一个整数n,表示有n个班级。
2~n+1行,每行有最多100个数字,表示第i-1班待选班服的编号。

输出

对于每组数据,输出方案总数 mod 1000000007后的答案。 

输入示例

2
3
5 100 1
2
5 100
2
3 5
8 100 

输出示例

4

其他说明

对于30%的数据,1<=T<=3, 1<=n<=3,每班待选样式不超过10种。
对于50%的数据,1<=T<=5, 1<=n<=5,每班待选样式不超过50种。
对于100%的数据,1<=T<=10, 1<=n<=10,每班待选样式不超过100种。 

#include<cstdio>
#include<cctype>
#include<queue>
#include<cmath>
#include<cstring>
#include<algorithm>
#define rep(i,s,t) for(int i=s;i<=t;i++)
#define dwn(i,s,t) for(int i=s;i>=t;i--)
#define ren for(int i=first[x];i!=-1;i=next[i])
using namespace std;
int yes;
inline int read() {
int x=0,f=1;char c=getchar();
for(;!isdigit(c);c=getchar()) if(c==‘-‘) f=-1;
for(;isdigit(c);c=getchar()) x=x*10+c-‘0‘;
if(c==‘\n‘) yes=1;
return x*f;
}
const int mod=1000000007;
int A[110],f[110][1050];
int main() {
f[0][0]=1;
dwn(T,read(),1) {
memset(A,0,sizeof(A));
int n=read();
rep(i,1,n) {
yes=0;
while(!yes) A[read()]|=1<<i-1;
}
rep(i,1,100) rep(S,0,(1<<n)-1) {
f[i][S]=f[i-1][S];
rep(j,0,n-1) if((A[i]>>j&1)&&(S>>j&1)) (f[i][S]+=f[i-1][S^(1<<j)])%=mod;
}
printf("%d\n",f[100][(1<<n)-1]);
}
return 0;
}

时间: 2024-10-10 07:51:35

班服(C++)的相关文章

生无可恋的班服

宣传委员画了一个稿子: 好丑啊! 然后我想我要拿出自己的方案,不然没说服力. 于是花了两天找矢量素材. 接着放到班群里投票. 然而结果…… 还有一个是投错的.想投3结果投了2. 在这里保存一下我的效果图. 全部是矢量图!!!我找了好久的!!!! 我作业都没做你造吗!!! OI都没刷你造吗!!! 真·生无可恋. 又要拿来垫衣柜??????!!!!! 再见 再见 再见 再见

微信公众平台开发入门--PHP,实现自动回复文本,图文,点击事件

一页代码实现微信基本回复和点击事件功能,部署上去sae或者bae,妥妥的基本免费的服务器 不懂代码都基本每个人都可以做自己的微信公众号了 <?php define("TOKEN", "mzh"); //换成你的token $wechatObj = new wechatCallbackapiTest(); if (isset($_GET['echostr'])) { //验证微信 $wechatObj->valid(); }else{ //回复消息 $we

青春 就此别过

在此时听着Eason新专辑写下这篇文章,怀着一颗复杂的心情,既有着即将毕业的喜悦,又有着即将离别的不舍. 青春于我来说是各种遗憾的组成.一个狗屎运似的高考二志愿录取,本在开学之初还庆幸有个二本的大学来开始我的大学生涯,还在初期的求学中一边疑惑着专业是干什么的一边认为学校的管理挺好的.随着时间慢慢溜走,心智慢慢成熟,再见证过没有传说中的报告会和运动会不是学生自愿参加而是被迫出观众,也见证了一个大学的食堂从不会逼迫买饭刷卡,也了解了一些不可理喻的规定,终于明白这所大学其实就是一个刚度过青春期的高中.

能不能,不再只是竞赛?

其实作为一名蒟蒻应该是没有资格来说这个的,而下午看了一系列的文章之后,我还是憋不住来写这篇东西. 感谢自家老妈,把这篇文章发到了我的手机上  http://www.d1net.com/fun/316010.html 一开始看到,我也是惊了一下,欧美已经开始工业革命4.0了?  粗略一翻,看到一句话,这次不带上中国,更是惊了一下. 我想每个OIer踏上这条路,并且坚持下去都会有一个说得出或说不出的缘由,我也一样.蒟蒻接触OI的时间不长,满打满算也就一年半.侥幸是碰到了黄神.云神等各路大神,一路带着

微信接口示例

<?php define("TOKEN", "mzh"); //换成你的token $wechatObj = new wechatCallbackapiTest(); if (isset($_GET['echostr'])) { //验证微信 $wechatObj->valid(); }else{ //回复消息 $wechatObj->responseMsg(); } class wechatCallbackapiTest { public fun

青橙汇

"青橙汇"是集采购.设计.生产.推广.销售于一体的电子商务企业,专注于运用电子商务模式开展个性化文化衫定制行业以及职业装批发和销售,通过整合上游供应链以及运用电商化的管理系统,以优质.多样化的产品以及高效的订单处理机制抢占市场份额.我们秉承以顾客为核心,以提高产品及服务质量为中心,一切为了满足顾客个性化服装需求的使命,针对班服.工作服等校园公司团体服装定制细分市场,推出多种风格产品及定制化服务.同时,我们将通过改进技术.优化管理.创新方式达到比竞争对手更突出的用户体验,打造差异化的公司

冠杰mysql/php提升班

"还有谁,想知道- 一个从2010年3月开始的php从业者 如何从零开始12个月做到月薪8千 18个月时间突破1.5万 而且工作很轻松,舒适- 还有谁,想为自己找到一条- 快速.高效.轻松学习技术的赚钱之路?" 发自:阿琼 亲,您好! 我是阿琼,曾经就职于多家大型互联网公司.如您所见,上面的数字都是真实的.请允许我借用一位朋友的话来介绍一下我自己. === 阿琼是谁? 他的学业成绩一直就不是很优秀,大学读了一所很普通的大学(大专),从2008年毕业就开始找工作,没有一个像样的工作,在京

松岗红星网站客服培训

松岗红星网站客服培训 企业迫求需要网站推广及运营方向的人才,需要懂得哪此技术: 1.搜索引擎工作原理2.SEO排名揭秘与战略部署3.让客户更有粘性的精准关键词选择技术4.网站策划四大要素之设计技巧5.免费推广渠道与方法百度竞价推广开源节流思维模式与手法.1.低投入.高回报的账户设置技巧2.高点击率创意撰写技巧,让客户更加爱你3.关键词质量度的本质与出价技巧4.视频营销制作.策划班 招生对象: 无需基础.初.高中毕业生.应届毕业生.一切感兴趣者都可以 工作安排地点:珠三角 电子商务公司,从事专业网

立法會五題:為自閉症兒童提供的支援服務 2012

立法會五題:為自閉症兒童提供的支援服務******************* 以下為今日(二月二十九日)在立法會會議上張國柱議員的提問和勞工及福利局局長張建宗的答覆: 問題: 當局於二○一○至二○一一年度的<施政報告>中,提出從醫療.教育.學前服務及社會服務各方面協助自閉症兒童成長.就此,政府可否告知本會: (一)鑑於不少智障人士服務機構反映,有二至六成的智障人士患有自閉症,現時全港的自閉症人士,以及患有自閉症的智障人士的人數分別為何:對向患有自閉症的智障人士提供服務的機構,當局現時有否給予額