Counting Triangles

题意:

给你一个完全图,每个边被赋值为0或1,问这个完全图中有多少个完美三角形?
完美三角形定义:三角形的三边都为0或1

题解:

正着求不好求,我们可以倒着想
不考虑完美,完全图中有多少三角形?很明显C(2,n),
完美三角形=所有三角形-不完美三角形
不完美三角形就是同时存在0和1,我们现在这么想,假设点i有n个出边是1,有m个出边是0,那么可以组成的完美三角形就是m*n,第三个边不用考虑,因为已经有两个不一样了,但是这样会有重复,一个三角形会被统计两遍(两个连接点),所以除以2就行

代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
namespace GenHelper
{unsigned z1,z2,z3,z4,b,u;unsigned get(){b=((z1<<6)^z1)>>13;z1=((z1&4294967294U)<<18)^b;b=((z2<<2)^z2)>>27;z2=((z2&4294967288U)<<2)^b;b=((z3<<13)^z3)>>21;z3=((z3&4294967280U)<<7)^b;b=((z4<<3)^z4)>>12;z4=((z4&4294967168U)<<13)^b;return (z1^z2^z3^z4);}bool read() {while (!u) u = get();bool res = u & 1;u >>= 1; return res;}void srand(int x){z1=x;z2=(~x)^0x233333333U;z3=x^0x1234598766U;z4=(~x)+51;u = 0;}
}
using namespace GenHelper;
const int maxn=8010;
int n, seed;
bool edge[maxn][maxn];
ll red[maxn];
int main() {cin >> n >> seed;srand(seed);for (int i = 0; i < n; i++)for (int j = i + 1; j < n; j++)edge[j][i] = edge[i][j] = read();for(int i=0;i<n;i++){for(int j=0;j<n;j++){red[i]+=edge[i][j];}}ll ans=0;for(int i=0;i<n;i++){ans+=1ll*red[i]*(n-1-red[i]);}printf("%lld\n",1ll*n*(n-1)*(n-2)/6-(ans>>1));return 0;
}

Counting Triangles相关推荐

  1. ACdream OJ 1140 Counting Triangles

    给出N条边,问这些边能组成多少个不同的三角形,每条边的长度是不同的.首先我们先 将边长按照升序排序,然后枚举两条短的边,看最长边有多少种可能,累加. #include<cstdio> #i ...

  2. uva 12426 Counting Triangles 计算几何

    题意:给一个凸多边形,求以凸多边形的顶点为顶点的三角形中,有多少个面积小于给定数值K? 思路:旋转卡壳+二分答案 时间复杂度:n^2logn 1 #include<iostream> 2 ...

  3. ACM训练赛--递推专题

    1001: Buy the Ticket Problem Description The "Harry Potter and the Goblet of Fire" will be ...

  4. 一周一论文(翻译)—— [PVLDB 12] Distributed GraphLab A Framework for Machine Learning 分布式机器学习图计算框架

    摘要 虽然高级别数据并行框架,像MapReduce,简化了大规模数据处理的设计和实现的系统,他们没有自然或有效地支持许多重要数据挖掘和机器学习算法并且导致学习系统效率低下.为了帮助填补这一重要空白,我 ...

  5. 《算法入门经典大赛——培训指南》第二章考试

    UVa特别考试 UVa站点专门为本书设立的分类题库配合,方便读者提交: http://uva.onlinejudge.org/index.php?option=com_onlinejudge& ...

  6. 2021牛客暑期多校训练营3

    2021牛客暑期多校训练营3 题号 题目 知识点 A Guess and lies B Black and white C Minimum grid 二分图匹配 D Count E Math 数论+打 ...

  7. 杭电OJ分类题目(3)

    原题出处:HDOJ Problem Index by Type,http://acm.hdu.edu.cn/typeclass.php 杭电OJ分类题目(3) HDU Computational Ge ...

  8. 2021牛客暑期多校训练营3,签到题BEFJ

    题号 标题 已通过代码 通过率 团队的状态 A Guess and lies 点击查看 33/437 未通过 B Black and white 点击查看 785/5177 未通过 (最小生成树) C ...

  9. 杭电oj题目题型分类(转)

    1001 整数求和 水题 1002 C语言实验题--两个数比较 水题 1003 1.2.3.4.5... 简单题 1004 渊子赛马 排序+贪心的方法归并 1005 Hero In Maze 广度搜索 ...

最新文章

  1. KS007基于JSP实现人个人博客系统
  2. 如何系统的自学python 知乎-如何系统地自学 Python?
  3. 开发实践 | android网络通信 接收和发送数据详解
  4. (Metro学习三)图片uri保存到本地图片库
  5. 【数据结构与算法】之深入解析“奇偶链表”的求解思路与算法示例
  6. maven 部署nexus_设置本地Nexus存储库并从Maven部署WAR文件
  7. 看寄存代码中的方式时,一定要看到方法的底部 (有时代码会在finally中写东西) 。
  8. uwb定位系统价格怎么算
  9. 2020 CSP-S第二轮认证一等奖获奖名单
  10. 晨会纪要081110
  11. DFS:拯救少林神棍(Sticks)[四轮剪枝操作]
  12. cadence软件打开报错“计算机中丢失cdsCommon.dll”的解决办法
  13. 信息系统项目管理师第四版(最新)重点(背诵)内容概览
  14. 模拟QQ心情图片上传预览
  15. ABAP inner join 性能影响
  16. Unity实战 RTS3D即时战略游戏开发(三)
  17. 程序员提升码字代码速度网站
  18. Ubuntu下U盘没有不能新建粘贴文件 报错 [sdf] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
  19. 概率分布之间的距离度量以及python实现
  20. C语言CRC校验码计算与校验

热门文章

  1. 想给男友一个惊喜,没想到是这样的结局......
  2. 4部“教材级”纪录片,有生之年必看系列!
  3. 985硕博士:你为什么比我差?
  4. 乔布斯死后的300亿遗产终于被败光了,没想到竟是干了这件事
  5. 传说中理科生看到会沉默、文科生看到会流泪的【程序员文史综合题目】
  6. ubuntu流量监控_linux - 实时流量监控
  7. 织梦首页html在哪儿,dedecms织梦首页去index.html
  8. 求职学习笔记|并发编程知识点常见问题总结(一)
  9. 利用计算机制作多媒体最后一步,福建省高中会考 多媒体技术应用 选择题专项练习十一(201206)(有答案)...
  10. openkruise 缩容_Linus 本尊也来了!为什么 KubeCon 越来越火了?