博客
关于我
Problem K: 三角形数
阅读量:680 次
发布时间:2019-03-17

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

三角形数是能够排列成等边三角形的点数,例如1个点构成第一个三角形,3个点构成第二个,以此类推。第n个三角形数可以通过公式n(n+1)/2计算得到。对于给定的k值,我可以通过判断k的奇偶性来决定使用不同的公式计算。如果k是偶数,结果是(k/2)(k+1);如果k是奇数,结果是(k+1)/2k。

为了满足题目的需求,我编写了一个程序来处理多个输入查询,每次计算并输出第k个三角形数。程序使用unsigned long long来存储结果,确保精度和范围。

以下是代码示例:

#include 
int main() { unsigned long long k; while (scanf("%llu", &k) != EOF) { if (k % 2 == 0) { printf("%llu\n", (k / 2) * (k + 1)); } else { printf("%llu\n", ((k + 1) / 2) * k); } } return 0;}

代码的实现逻辑:

  • 包含必要的头文件。
  • 使用unsigned long long来保证不溢出。
  • 使用循环读取每个k的值。
  • 根据k的奇偶性选择相应计算方法。
  • 输出结果。
  • 这个解决方案快速且高效,满足题目的要求。

    转载地址:http://bcxhz.baihongyu.com/

    你可能感兴趣的文章
    【毕设-STM32f103寄存器版本】智能防盗系统
    查看>>
    Vue Itea软件里直接npm run build 报错npm ERR! missing script :build
    查看>>
    勒索病毒Kraken2.0.7分析
    查看>>
    MySQL错误1366处理方法
    查看>>
    Error running Address localhost:1099 is already in use(已解决)
    查看>>
    pytorch深度学习中每个epoch运行时间的统计代码
    查看>>
    VxWorks 操作系统学习笔记
    查看>>
    链表插入和删除算法
    查看>>
    断言(assert)的用法
    查看>>
    主机与虚拟机(ubuntu)可以互ping,虚拟机不能上网解决办法
    查看>>
    驱动程序之_1_字符设备_13_USB设备_1_基本概念
    查看>>
    wxPython下载安装教程
    查看>>
    HERest源码解析
    查看>>
    java 原型模式(大话设计模式)
    查看>>
    微机原理 6-计算机中常用的数制
    查看>>
    web访问ejb测试 详解
    查看>>
    window系统下安装使用curl命令工具
    查看>>
    假如计算机是中国人发明的,那代码应该这么写
    查看>>
    神器 Codelf !
    查看>>
    趣图:会算法和不会算法的区别
    查看>>