news 2026/10/28 6:18:40

UVa 12630 Equilateral Triangle in a Grid

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
UVa 12630 Equilateral Triangle in a Grid

题目翻译

在一个等边三角形中,每条边上有nnn个均匀分布的“点”,这些点构成了一个三角形点阵。下图展示了n=4n=4n=4时的点阵示例。

问题:
在这个点阵中,有多少个不同的等边三角形?要求每个等边三角形的顶点必须是点阵中的点。

注意:
等边三角形有多种大小和方向。

输入格式:
输入包含多行,每行一个整数nnn(2≤n≤100)(2 \leq n \leq 100)(2≤n≤100),表示每条边上的点数。输入以一行单独的000结束。输入文件不超过202020行。

输出格式:
对于每个nnn,输出一行,表示在该点阵中可以找到的不同等边三角形的总数。


题目分析

本题要求计算在边长为nnn(每条边有nnn个点)的等边三角形点阵中,所有顶点落在格点上的等边三角形的数量。这些三角形可以有不同的边长和方向,不能遗漏。

关键观察

  1. 点阵结构
    点阵共有n(n+1)2\frac{n(n+1)}{2}2n(n+1)​个点,排列成一个正三角形。

  2. 等边三角形的可能方向
    在正三角形网格中,等边三角形并不只有“一条边水平”这一种方向。实际上,由于网格具有60∘60^\circ60∘和120∘120^\circ120∘的对称性,存在多种方向的等边三角形。直接枚举所有方向并计数非常复杂。

  3. 组合数学方法
    通过观察样例数据:

    • 当n=2n=2n=2时,答案为111
    • 当n=3n=3n=3时,答案为555
      我们可以猜测答案可能是一个关于nnn的多项式。

公式推导(结论)

经过数学推导(或查表OEIS A000332\texttt{OEIS A000332}OEIS A000332),可以发现:答案等于组合数(n+24)\binom{n+2}{4}(4n+2​)。

即:
答案=(n+2)(n+1)n(n−1)24 \text{答案} = \frac{(n+2)(n+1)n(n-1)}{24}答案=24(n+2)(n+1)n(n−1)​

为什么是这个公式?
一种经典解释是:在正三角形点阵中,每个等边三角形唯一对应一个由四个点确定的“外接平行四边形”(或通过某种投影映射到四个顶点),因此总数等于从n+2n+2n+2个“虚拟顶点”中选择444个的组合数。具体证明涉及对网格的坐标变换和计数,这里不做展开。


解题思路

  1. 读入nnn,直到遇到000为止。
  2. 对于每个nnn,直接使用公式计算:
    answer=(n+2)×(n+1)×n×(n−1)24 \texttt{answer} = \frac{(n+2) \times (n+1) \times n \times (n-1)}{24}answer=24(n+2)×(n+1)×n×(n−1)​
    注意使用long long或int64_t避免乘法溢出。
  3. 输出结果。

时间复杂度:O(1)O(1)O(1)每询问。
空间复杂度:O(1)O(1)O(1)。


代码实现

// Equilateral Triangle in a Grid// UVa ID: 12630// Verdict: Accepted// Submission Date: 2025-12-17// UVa Run Time: 0.000s//// 版权所有(C)2025,邱秋。metaphysis # yeah dot net#include<bits/stdc++.h>usingnamespacestd;intmain(){intn;while(cin>>n&&n){// 公式:C(n+2, 4) = (n + 2) * (n + 1) * n * (n - 1) / 24longlonganswer=1LL*(n+2)*(n+1)*n*(n-1)/24;cout<<answer<<endl;}return0;}

样例验证

输入:

2 3 0

输出:

1 5

与题目样例一致。


总结

本题是一个经典的组合计数问题,关键在于找到隐藏的组合数公式(n+24)\binom{n+2}{4}(4n+2​)。直接枚举所有三角形在n≤100n \leq 100n≤100时不可行,因此必须依靠数学推导或已知结论。在竞赛中,如果遇到类似“正三角形网格中等边三角形计数”的问题,可以尝试使用这个公式。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/27 17:13:03

CellProfiler生物图像分析完全指南:从入门到精通

在生物医学研究领域&#xff0c;面对海量的显微镜图像数据&#xff0c;传统的手工分析方法已经无法满足现代科研需求。CellProfiler作为一款开源的生物图像分析软件&#xff0c;专门为研究人员提供强大的细胞分析和图像处理能力&#xff0c;帮助您从复杂的生物图像中提取有价值…

作者头像 李华
网站建设 2026/10/28 1:51:30

B站视频下载完全指南:新手必备的简单三步教程

B站视频下载完全指南&#xff1a;新手必备的简单三步教程 【免费下载链接】BiliDownloader BiliDownloader是一款界面精简&#xff0c;操作简单且高速下载的b站下载器 项目地址: https://gitcode.com/gh_mirrors/bi/BiliDownloader 还在为无法保存B站视频而烦恼吗&#…

作者头像 李华
网站建设 2026/10/28 4:21:10

KISS FFT:重新定义轻量级信号处理的工程艺术

KISS FFT&#xff1a;重新定义轻量级信号处理的工程艺术 【免费下载链接】old-kissfft [DEPRECATED MIRROR] You want https://github.com/mborgerding/kissfft! 项目地址: https://gitcode.com/gh_mirrors/ol/old-kissfft 设计哲学与技术理念 在当今信号处理领域&…

作者头像 李华
网站建设 2026/10/28 2:42:01

6、常见WRT54G第三方固件全解析

常见WRT54G第三方固件全解析 在当今的网络环境中,为了满足不同的需求,许多用户会选择为WRT54G路由器安装第三方固件。这些固件各具特色,能为用户带来不同的功能和体验。下面,我们就来详细了解一些常见的第三方固件。 1. Ewrt固件 Ewrt固件专为那些希望将无线互联网服务作…

作者头像 李华
网站建设 2026/10/27 16:11:10

3步构建企业级3D抽奖系统:从策划到落地的完整解决方案

3步构建企业级3D抽奖系统&#xff1a;从策划到落地的完整解决方案 【免费下载链接】lottery &#x1f389;&#x1f31f;✨&#x1f388;年会抽奖程序&#xff0c;基于 Express Three.js的 3D 球体抽奖程序&#xff0c;奖品&#x1f9e7;&#x1f381;&#xff0c;文字&#x…

作者头像 李华
网站建设 2026/10/27 3:05:30

LDDC:3大平台歌词获取,打造专属音乐体验

你是否曾经为心爱的歌曲找不到合适的歌词而烦恼&#xff1f;当你想跟着音乐一起唱&#xff0c;却发现歌词要么不全&#xff0c;要么格式不对&#xff1f;现在&#xff0c;LDDC 为你提供了便捷解决方案&#xff0c;支持QQ音乐、酷狗音乐、网易云三大平台&#xff0c;完全免费使用…

作者头像 李华