题意:

给出n个点,n个点构成了完全图,每条边是红色或者是蓝色,问这个图中有多少个三角形三条边都是同一个颜色。

思路:

本想暴力,看见榜单上大家都TLE了,不敢暴力了,就找规律。

画图发现,如果三个点的边不是同一种颜色,那么一定有两个点连着不同颜色的边,所以我们统计每个点连着的红色边和蓝色边的个数,把它们相乘,累加之后除以二代表了不是三条边颜色相同的三角形的个数,用C(n,3)一减即可。


代码:

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<queue>
#include<vector>
#include<map>
#include<stack>
#include<cmath>
#include<cstdlib>
#include<climits>
#include<sstream>using namespace std;int color[1005][3];int main()
{int t;scanf("%d",&t);while(t--){int n;scanf("%d",&n);memset(color,0,sizeof color);for(int i=1;i<=n;i++)for(int j=i+1;j<=n;j++){int tmp;scanf("%d",&tmp);color[i][tmp]++;color[j][tmp]++;}int ans=n*(n-1)*(n-2)/3/2;int tmp=0;for(int i=1;i<=n;i++)tmp+=(color[i][0]*color[i][1]);printf("%d\n",ans-tmp/2);}return 0;
}

uva1511(找规律。。。)相关推荐

  1. 2018.09.01 poj3071Football(概率dp+二进制找规律)

    传送门 概率dp简单题. 设f[i][j]表示前i轮j获胜的概率. 如果j,k能够刚好在第i轮相遇,找规律可以发现j,k满足: (j−1)>>(i−1)(j−1)>>(i−1) ...

  2. 点分治问题 ----------- P3727 曼哈顿计划E[点分治+博弈SG函数打表找规律]

    题目链接 解题思路: 1.首先对于每个操作我们实际上是一个博弈问题 对于k=1的操作就是很基础的NIM游戏就是找到一条链的异或和为0 对于k=2的操作通过达打表找规律: 如果s是奇数那么偶数的SG函数 ...

  3. 数学/找规律/sgu 118 Digital root

    题意 定义f(n)为n各位数字之和,如果n是各位数,则n个数根是f(n),否则为f(n)的数根 现在给出n个Ai,求出A1*A2*-*AN + A1*A2*-*AN-1 + - + A1*A2 + A ...

  4. HDU 5703 Desert 水题 找规律

    HDU 5703 Desert 水题 找规律 已知有n个单位的水,问有几种方式把这些水喝完,每天至少喝1个单位的水,而且每天喝的水的单位为整数.看上去挺复杂要跑循环,但其实上,列举几种情况之后就会发现 ...

  5. Odd Grasshopper 奇偶找规律

    思路 : 首先根据输入的奇偶性分别找规律,发现与输入无关,都满足4个一循环的规律 如果次数n刚好是4的倍数,那么就是x0,否则,找到小于n中最靠近n的一个4的倍数,从它开始模拟到n,就是答案 #inc ...

  6. 2021 年百度之星·程序设计大赛 - 初赛二 1001 签到(找规律,快速幂)

    solution 找规律 #include <iostream> #include <algorithm>using namespace std;const int mod = ...

  7. 洛谷P2158仪仗队(数学,观察找规律,欧拉函数)

    题目链接:https://www.luogu.org/problemnew/show/P2158 读完题被吓到了,这是什么东西. 总之,需要观察+找规律啊!观察可以发现,从第三行开始,第i行中当前直角 ...

  8. uvalive5092(找规律)

    题意: 给出n和m,我们有一个由1~n组成的n个数字的数列a[],如果a[i]>i,我们就把ans++,我们要求出ans==m的数列有多少个. 思路: 打个表,找规律,规律如代码中所示,类似于杨 ...

  9. 汉诺塔问题hdu 2065——找规律

    这类题目就是纸上模拟,找规律. 问题描述:在一块铜板上有三根杆,目的是将最左边杆上的盘全部移到右边的杆上,条件是不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间移出),也不允 ...

最新文章

  1. linux c 创建子进程执行任务 简介
  2. python零基础入门教程学习要多久-廖雪峰python教程要学多久-零基础学Python需要多久...
  3. Linux文件属性和权限
  4. 修建道路 贪心,思维(女赛)
  5. linux cp命令强行覆盖复制
  6. linux tail 命令,Linux tail命令的巧妙应用
  7. python 关键字参数为什么只能出现在最后_Python笔记2——默认参数,可变参数,关键字参数,参数组合...
  8. 利用协议代理实现导航控制器UINavigationController视图之间的正向传值和反向传值...
  9. 完整机器学习项目的流程
  10. 获取.properties后缀的数据
  11. LeetCode 935. 骑士拨号器(动态规划)
  12. Response AddHeader使用实例
  13. ExpandableListView点击Group动态获取Child数据源
  14. 中南大学毕业设计(论文)LaTeX模板
  15. java判断图片地址链接是否有效
  16. 判断文本框输入中文超过10个英文数字超过20个
  17. 考研词汇(这些句子让你掌握7000个单词)
  18. 北京个体户税务申报如何办理?
  19. 麒麟服务器v10系统安装时报错,银河麒麟V10服务器版本编译安装php7.2.12
  20. LocalDateTime和时间戳互转

热门文章

  1. [MATLAB学习笔记]sprintf将数据格式化为字符串或字符向量
  2. 云炬Android开发笔记 13购物车,订单,支付功能开发(包含支付宝支付和微信支付)
  3. 云炬Android开发笔记 5-9,10拦截器功能设计与实现
  4. 用ConfigParser模块读写conf配置文件
  5. Matlab中配置LibSVM 总结
  6. 【CyberSecurityLearning 31】Linux网络信息查看与配置、日志文件的管理、备份及日志服务器的搭建
  7. SpringBoot退出登录,使session失效
  8. Postman 使用 “status“: 415, “error“: “Unsupported Media Type“, “message“: “Content type ‘app
  9. 一个历史遗留问题,引发的linux内存管理的‘血案’
  10. fetch 与引用规格(refspec)—— Git 学习笔记 23