HDU 5952 Counting Cliques -暴力

HDU 5952 Counting Cliques -暴力

大家好,又见面了,我是全栈君。

现场赛手速三题,这题一直没写。

直接暴力,注意点只有一个!单向建边,从小点到大点。

HDU 5952 Counting Cliques -暴力
HDU 5952 Counting Cliques -暴力

 1 #include <iostream>  2 #include <cstring>  3 #include <cstdio>  4 using namespace std;  5 struct edge  6 {  7 int to;  8 int next;  9 }E[1011]; 10 int head[111]; 11 bool e[111][111]; 12 int tot; 13 int N,S,M,ans; 14 void addedge(int a,int b) 15 { 16 E[tot].to = a; 17 E[tot].next = head[b]; 18 head[b] = tot++; 19 } 20 int V[20]; 21 int sv = 0; 22 bool check(int t) 23 { 24 for (int i = 1; i<=sv;i++) 25  { 26 if (!e[V[i]][t]) return false; 27  } 28 return true; 29 } 30 void dfs(int u) 31 { 32 if (sv==S) 33  { 34 ans++; 35 return; 36  } 37 for (int i = head[u] ; i!=-1;i = E[i].next) 38  { 39 int v = E[i].to; 40 if (check(v)) 41  { 42 V[++sv] = v; 43  dfs(v); 44 sv--; 45  } 46  } 47 } 48 int main() 49 { 50 int T; 51 cin >> T; 52 while (T--) 53  { 54 cin >> N >> M >>S; 55 memset(head,-1,sizeof(head)); 56 memset(e,false,sizeof(e)); 57 tot = 0; 58 for (int i= 1; i<=M; i++) 59  { 60 int a,b; 61 scanf("%d%d",&a,&b); 62  addedge(min(a,b),max(a,b)); 63 e[a][b] = true; 64 e[b][a] = true; 65  } 66 ans=0; 67 for (int i = 1; i<=N; i++) 68  { 69 sv = 0; 70 V[++sv] = i; 71  dfs(i); 72  } 73 cout <<ans <<endl; 74  } 75 }

View Code

 

转载于:https://www.cnblogs.com/HITLJR/p/6607769.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/108604.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • vs2015安装失败怎么卸载_vs2013怎么卸载

    vs2015安装失败怎么卸载_vs2013怎么卸载使用微软自带的程序安装卸载工具有时候无法完全卸载VS2005,导致想重新安装VS2005时提示“此计算机上已安装了试用版本。必须先卸载以前安装的试用版本后才能安装另一个试用版”。此时可以下载专用工具“VS2005卸载工具”进行彻底删除,此具工在本人的博客资源中有下载。如果这样彻底删除后还不能安装,则可以进入注册表,找到如下注册键,把它删除:删除HKEY_LOCAL_MACHINE\SOFTW

  • fork函数详解_全纯函数是什么

    fork函数详解_全纯函数是什么从最简单(基础)的一个例子说起,应该说是最基础而不是简单,下面的这个最基础的例子其实并不简单,因为有很多细节。我们需要从fork函数的定义开始说起:man手册官方定义thisfunctioncreatesanewprocess.Thereturnvalueisthezerointhechildandtheprocess-idnumberofthechildintheparent,or-1uponerror.这个函数创建一个新的进程。在子进

    2022年10月28日
  • 数学的本质

    数学的本质数学的本质李国伟现代数学在方法上的特征现代数学在方法上最明显的特色是它的演绎性,就是由基本定义与公理出发,经逻辑推论到所有定理的发展方式。采取这种方法并非偶然,而是有内在的需求。我们要把一套概念讲清楚,必须用比较简单的概念来解释,但是这些概念又需要再加澄清,如此继续下去,如果不曾周而复始得到一个什么也说不清的恶性循环,便会无限延伸下去,达到一个不可知的前端。人类寻求知识的目的在组织自己

  • tikv源码分析_crt脚本命令大全

    tikv源码分析_crt脚本命令大全版权声明:本文由神州数码云基地团队整理撰写,若转载请注明出处。以TiKvConfigstruct为起始点,从TiKvConfig内部的字段开始,分析每个模块的作用和配置检查逻辑所做的事情。TiKV是一个分布式事务型的键值数据库,是TiDB的存储层,提供了满足ACID约束的分布式事务接口,并且通过Raft协议保证了多副本数据一致性以及高可用。关于TiDB、TiKV的详细介绍可以从官网查阅,这里就不多赘述了。知乎上已经有一篇高屋建瓴的文章,由TiKV亲爹Ed写的TiKV代码初探,可以从整

  • CString转int

    int转CString就不细说了,使用format即可,这里简单介绍下CString转int的一种简便方法CStringstrNum("100");intnum;//ANSInum=atoi(strNum);num=_ttoi(strNum);//UNICODEnum=atoi(CT2A(strNum.Getbuff()));num=_ttoi(…

  • python中sqrt的用法_Python中sqrt函数怎么用「建议收藏」

    python中sqrt的用法_Python中sqrt函数怎么用「建议收藏」Python中sqrt函数怎么用?下面给大家带来sqrt函数的相关介绍:Python数字sqrt()函数返回x的平方根(x>0)。语法以下是sqrt()方法的语法-importmathmath.sqrt(x)注意-此函数不可直接访问,需要导入math模块,然后需要使用math静态对象调用此函数。参数x-这是一个数字表达式。返回值该方法返回x的平方根(x>0)。sqrt()…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号