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

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

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

(0)
上一篇 2022年3月2日 上午8:00
下一篇 2022年3月2日 上午8:00


相关推荐

  • js生成随机数概率算法

    js生成随机数概率算法1 首先通过设定的概率列表 确定随机的最大值 最小值我这边都是按照 0 this GetMaxNum function varmax num 0 for varz 0 z

    2026年3月16日
    2
  • vue eslint报错_如何关闭eslint

    vue eslint报错_如何关闭eslintvue.config.js中module.exports={lintOnSave:false}或者只在开发环境中开启eslint自检lintOnSave:process.env.NODE_ENV!==”production”,

    2022年10月8日
    3
  • 配置推荐

    配置推荐

    2026年3月14日
    3
  • 测试用例-单元测试

    测试用例-单元测试单元测试 编写手册 1 简述本文主要针对如何使用 Junit 编写单元测试进行描述文中的实例基于 Junit4 所谓单元测试 即是指针对程序中的一些单元进行测试的方法这些单元在 Junit 中的最小单位为方法借助单元测试 我们可以轻松地单独测试程序中的某一个逻辑片段而不需要在意程序的外部依赖和其它逻辑接口测试单元测试只能以接口为维度进行测试只需被测试的单元逻辑正常即可工程必须编译通过并打包进行部署可以不依赖外部 测试进度不再受制于外部条件工程的外部依赖 数据库 调用

    2025年8月19日
    4
  • Linux操作系统基础(完结)

    Linux操作系统基础(完结)一、Linux操作系统概述二、Linux操作系统安装三、Linux文件系统及文件基础四、Linux操作系统命令使用基础五、Linux应用程序的安装与卸载基础五、用户及进程六、相关信息查询七、网络配置八、Linux应用程序的安装与卸载基础九、vim

    2022年5月9日
    45
  • Ubuntu10.04 下安装RabbitVCS

    Ubuntu10.04 下安装RabbitVCS安装RabbitVCS的方法步骤如下:1、sudoadd-apt-repositoryppa:rabbitvcs/ppa#将rabbitvcs的添加到源里面。(次操作会提示是否要添加到源里面,点击ENTER添加,ctrl+c不添加)2、sudoapt-keyadv–keyserverkeyserver.ubuntu.com–recv-keys34EF…

    2022年7月18日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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