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

大娃娃可以套在小娃娃外面(各边严格小),问最后最少得到几个娃娃

题目中的娃娃可以看做点,嵌套关系可以看做有向的路径,这样发现这题就是一个裸的最小路径覆盖问题

#include <iostream>
#include <cstdio>
#include <cstring>
#include <map>
#include <cmath> using namespace std; struct node{
int s,t,nxt ;
}e[] ;
int k,m,n,head[],cnt,match[],vis[] ;
int find(int s)
{
for(int i=head[s] ;i!=- ;i=e[i].nxt)
{
int tt=e[i].t ;
if(!vis[tt])
{
vis[tt]= ;
if(match[tt]==- || find(match[tt]))
{
match[tt]=s ;
return ;
}
}
}
return ;
}
int max_match()
{
int ans= ;
memset(match,-,sizeof(match)) ;
for(int i= ;i<=n ;i++)
{
memset(vis,,sizeof(vis)) ;
ans+=find(i);
}
return ans;
}
void add(int s,int t) {e[cnt].s=s ;e[cnt].t=t ;e[cnt].nxt=head[s] ;head[s]=cnt++ ;} struct node1{
int w,l,h;
}kk[]; void read_graph()
{
memset(head,-,sizeof(head)) ;
cnt= ;
for(int i=;i<=n;i++){
for(int j=;j<=n;j++){
if(i==j)continue;
if(kk[i].w<kk[j].w && kk[i].l<kk[j].l && kk[i].h<kk[j].h)
add(i,j);
}
}
} int main(){
while(~scanf("%d",&n),n){
for(int i=;i<=n;i++){
scanf("%d%d%d",&kk[i].w,&kk[i].l,&kk[i].h);
}
read_graph();
printf("%d\n",n-max_match());
}
return ;
}

HDU 4160的更多相关文章

  1. (匹配)Dolls --HDU --4160

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=4160 代码: #include<stdio.h> #include<string.h& ...

  2. HDU 4160 Dolls (最小路径覆盖=顶点数-最大匹配数)

    Dolls Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  3. HDOJ 2111. Saving HDU 贪心 结构体排序

    Saving HDU Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  4. 【HDU 3037】Saving Beans Lucas定理模板

    http://acm.hdu.edu.cn/showproblem.php?pid=3037 Lucas定理模板. 现在才写,noip滚粗前兆QAQ #include<cstdio> #i ...

  5. hdu 4859 海岸线 Bestcoder Round 1

    http://acm.hdu.edu.cn/showproblem.php?pid=4859 题目大意: 在一个矩形周围都是海,这个矩形中有陆地,深海和浅海.浅海是可以填成陆地的. 求最多有多少条方格 ...

  6. HDU 4569 Special equations(取模)

    Special equations Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u S ...

  7. HDU 4006The kth great number(K大数 +小顶堆)

    The kth great number Time Limit:1000MS     Memory Limit:65768KB     64bit IO Format:%I64d & %I64 ...

  8. HDU 1796How many integers can you find(容斥原理)

    How many integers can you find Time Limit:5000MS     Memory Limit:32768KB     64bit IO Format:%I64d ...

  9. hdu 4481 Time travel(高斯求期望)(转)

    (转)http://blog.csdn.net/u013081425/article/details/39240021 http://acm.hdu.edu.cn/showproblem.php?pi ...

随机推荐

  1. java二维数组简单初步理解

    二维数组 二维数组本质上是以数组作为数组元素的数组,即“数组的数组”. int[][] arr = {{1, 2, 3}, {4, 5, 6}}; System.out.println(arr[0][ ...

  2. 更改电脑与eclpse热键冲突

  3. Tomcat编码问题

    在Tomcat7中,默认URIEncoding="iso8859-1",get请求由于url会完全出现在地址栏,所以传递中文到后台会乱码,需要改成URIEncoding=" ...

  4. smartGit30天试用过期

    Windows: %APPDATA%\syntevo\SmartGit\OS X:    ~/Library/Preferences/SmartGit/Unix/Linux:  ~/.smartgit ...

  5. Apache启用性能优化——启用Gzip,JS压缩

    #Add deflate module for enable GZIP function LoadModule deflate_module     modules/mod_deflate.so #A ...

  6. java中的native方法和修饰符(转)

    Java中的native修饰符 今天偶然看代码,发现别人有这样写的方法,并且jar里面有几个dll文件,比较奇怪,于是把代码打开,发现如下写法. public native String GSMMod ...

  7. JavaScript 在函数中使用Ajax获取的值作为函数的返回值

    解决:JavaScript 在函数中使用Ajax获取的值作为函数的返回值,结果无法获取到返回值 原因:ajax默认使用异步方式,要将异步改为同步方式 案例:通过区域ID,获取该区域下所有的学校 var ...

  8. plist 和 Xib

    plist文件 mainbudin加载时候有后缀 xib文件  mainbudin加载时候无需后缀

  9. <转载>DB2常用命令

    1.数据库的启动.停止    db2start --启动   db2stop [force] --停止 2.与数据库的连接.断开   db2 CONNECT TO DBName [user UserI ...

  10. 傅里叶变换:MP3、JPEG和Siri背后的数学

    九年前,当我还坐在学校的物理数学课的课堂里时,我的老师为我们讲授了一种新方法,给我留下了深刻映像.我认为,毫不夸张地说,这是对数学理论发现最广泛的应用.应用的领域包括:量子物理.射电天文学.MP3和J ...