【HDU 4451 Dressing】水题,组合数
有衣服、裤子、鞋数量分别为n,m,k,给出p对不和谐的衣-裤或裤-鞋搭配,问一共有多少种和谐的衣裤鞋的搭配。
全部的组合有Cn1Cm1Ck1种。
设p对中有p1对衣-裤,p2对裤-鞋,则不和谐的搭配共有p1*Ck1+p2*Cn1种,但有被重复计算两次的搭配共p3对,它们引用了同一裤。设裤 i 在p1被引用 li 次,在p2被引用 ri 次,则p3=∑(1*Cli1Cri1)。所以答案为n*m*k-p1*k-p2*n+p3
#include <cstdio>
#include <cstring>
#include <set>
using namespace std; int n,m,k;
typedef pair<int,int> P;
P pants[];//i号pant被p1引用first次,被p2引用second次
int p,p1,p2,p3;
int ans; int main()
{
freopen("4451.txt","r",stdin);
while(scanf("%d%d%d",&n,&m,&k)!=EOF)
{
if(n==&&m==&&k==) break;
ans=n*m*k;
memset(pants,,sizeof(pants));
p1=p2=p3=;
scanf("%d",&p);
char s1[],s2[];
int n1,n2;
for(int i=;i<p;i++)
{
scanf("%s",s1);
scanf("%d",&n1);
scanf("%s",s2);
scanf("%d",&n2);
if(s1[]=='c')
{
p1++;
pants[n2].first++;
}else if(s1[]=='p')
{
p2++;
pants[n1].second++;
}
}
for(int i=;i<=m;i++)
{
p3+=pants[i].first*pants[i].second;
}
ans-=p1*k+p2*n-p3;
printf("%d\n",ans);
}
return ;
}
【HDU 4451 Dressing】水题,组合数的更多相关文章
- HDU 4451 Dressing
HDU 4451 Dressing 题目链接http://acm.split.hdu.edu.cn/showproblem.php?pid=4451 Description Wangpeng has ...
- hdu 5210 delete 水题
Delete Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5210 D ...
- hdu 1251 (Trie水题)
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others)Total Submi ...
- hdu 4451 Dressing 排列组合/水题
Dressing Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- HDU 5703 Desert 水题 找规律
已知有n个单位的水,问有几种方式把这些水喝完,每天至少喝1个单位的水,而且每天喝的水的单位为整数.看上去挺复杂要跑循环,但其实上,列举几种情况之后就会发现是找规律的题了= =都是2的n-1次方,而且这 ...
- HDU 4493 Tutor 水题的收获。。
题目: http://acm.hdu.edu.cn/showproblem.php?pid=4493 题意我都不好意思说,就是求12个数的平均数... 但是之所以发博客,显然有值得发的... 这个题最 ...
- hdu 4802 GPA 水题
GPA Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=4802 Des ...
- hdu 4493 Tutor 水题
Tutor Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=4493 D ...
- hdu 5495 LCS 水题
LCS Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5495 Descr ...
随机推荐
- .net 反编译利器 dnspy
Binaries Latest release: https://github.com/0xd4d/dnSpy/releases Latest build (possibly unstable): h ...
- Windows搭建Sublime Text 3 + Go开发环境
1. 安装Sublime Text 3 Sublime Text 3(以下简称ST)的下载与安装我就不说啦,目前还是一个测试版,不过据说比ST2增加了好多新功能,下载地址: http://www.su ...
- 动态绑定ReportViewer控件之经验总结
以上两篇文章已经很丰富了,但是照做一遍不行,检查了N遍还是不行,就是找不出问题原因,总是提示“尚未为数据源“DataSet1_DataTable1”提供数据源实例.”这主要是说在为ReportView ...
- 2013第51周二eclipse启动优化
2013第51周二eclipse启动优化 今天注意到了eclipse.ini配置文件中gc.log--在eclipse启动时清空,然后记录了eclipse每次运行过程中的gc分配情况,看到了一篇很好的 ...
- Linux NFS服务器的安装与配置(转载)
一.NFS服务简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操 ...
- 用到的Python运算符
假设变量a为10,变量b为20. 算术运算符 比较运算符 赋值运算符 逻辑运算符 运算符优先级 对于逻辑运算符,not的优先级最大,or的优先级最小.它们三个的优先级排序为:not > and ...
- linux C连接mysql
linux 环境下C语言连接数据库首先要配置环境 1,确定你的linux下安装mysql我们可以做个测试. 打开你的终端,在终端下输入:service mysqld status [root@bogo ...
- js 创建html元素 渲染html元素
var p1 = document.getElementById('p1'); //添加的元素类型及属性var newNode = document.createElement("input ...
- java中String的用法
String的用法很活跃,也用到的很多.可以根据自己的需要查询API.这里只有concat和substring,indexof的用法 class TestString { public static ...
- Javascript进阶篇——( 事件响应)笔记整理
什么是事件 JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 鼠标单击事件(on ...