博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVa11401 Triangle Counting
阅读量:6839 次
发布时间:2019-06-26

本文共 694 字,大约阅读时间需要 2 分钟。

数学问题 递推

设三角形三边长分别为x,y,z,满足x>y>z

可以得出x-y<z<x

当x=n时:

  当y=1时无解;当y=2时有一个解;当y=3时有2个解....当y=n-1时有n-2个解。

  总共有 (n-1)(n-2)/2个解。

  减去其中的 (x-1) div 2 个等腰三角形,剩下的三角形每个都被算了两遍(因为计算时y和z大小关系未定)

 

那么,x=n时,方案数f[x]=f[x-1](//最长边为x-1的方案数) + ((n-1)(n-2)/2-(x-1)/2)/2  (//最长边为x的方案数)

递推出解。

 

1 /*by SilverN*/ 2 #include
3 #include
4 #include
5 #include
6 #include
7 #define LL long long 8 using namespace std; 9 const int mxn=1000010;10 LL s[mxn];11 int main(){12 LL i,j;13 for(i=3;i
=3){17 printf("%lld\n",s[n]);18 }19 return 0;20 }

 

转载于:https://www.cnblogs.com/SilverNebula/p/6275725.html

你可能感兴趣的文章
洛谷P1027 Car的旅行路线 计算几何 图论最短路
查看>>
MWC2015中的LTE软基站(转自GeeFlex)
查看>>
BurpSuite日志分析过滤工具,加快SqlMap进行批量扫描的速度
查看>>
C++ 的复制构造函数
查看>>
[SDOI2017]新生舞会
查看>>
Ocelot(二)- 请求聚合与负载均衡
查看>>
vue绑定数据之前 会看到源代码
查看>>
Django 前台通过json 取出后台数据
查看>>
C# 日志框架的添加
查看>>
Knockout学习之前言
查看>>
windows搭建gcc开发环境(msys2) objdump
查看>>
百度网页分享js代码
查看>>
shell脚本按行读取文件的几种方式
查看>>
Nachos3.4系列-1 安装与环境配置 【转】
查看>>
hihocoder1513 小Hi的烦恼
查看>>
MySQL操作指令
查看>>
HDU - 3974 Assign the task (DFS建树+区间覆盖+单点查询)
查看>>
MySQL索引 专题
查看>>
HTTPDNS成为移动互联网的标配–原因与原理解析(转)
查看>>
ThreadLocal是否会引发内存泄露的分析 good
查看>>