博客
关于我
P8738 [蓝桥杯 2020 国 C] 天干地支
阅读量:797 次
发布时间:2023-02-26

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

为了解决这个问题,我们需要将给定的公元年份转换为对应的天干地支年份。天干和地支在中国传统历法中用于记录年份,每过60年天干和地支都会循环一次。

方法思路

  • 理解天干和地支的循环规律:天干有10个,地支有12个,每个年份由天干和地支组成。例如,2020年是庚子年。
  • 确定基准年份:已知公元1年是辛酉年。因此,我们可以从公元1年开始计算年份差。
  • 计算天干和地支索引:使用模运算来确定给定年份对应的天干和地支索引。天干每10年循环一次,地支每12年循环一次。
  • 解决代码

    #include 
    using namespace std;string day_gan[] = {"jia", "yi", "bing", "dīng", "wù", "jǐ", "gēng", "xīn", "rén", "guǐ"};string di_zhi[] = {"shen", "you", "xu", "hai", "zi", "chou", "yin", "mao", "chen", "si", "wu", "wei"};int main() { int year; cin >> year; int diff = year - 1; int ton_index = (7 + diff) % 10; int dzi_index = (9 + diff) % 12; string ans = day_gan[ton_index] + di_zhi[dzi_index]; cout << ans << endl; return 0;}

    代码解释

  • 读取输入:从标准输入读取年份。
  • 计算年份差:从公元1年开始计算年份差。
  • 计算天干索引:使用基准年份的天干索引加上年份差,并对10取模,得到当前年份的天干索引。
  • 计算地支索引:同样地,使用基准年份的地支索引加上年份差,并对12取模,得到当前年份的地支索引。
  • 拼接结果:根据索引拼接天干和地支,输出结果。
  • 通过这种方法,我们可以准确地将任意公元年份转换为对应的天干地支年份。

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

    你可能感兴趣的文章
    Openlayers高级交互(19/20): 地图上点击某处,列表中显示对应位置
    查看>>
    Openlayers高级交互(8/20):选取feature,平移feature
    查看>>
    openlayers:圆孔相机根据卫星经度、纬度、高度、半径比例推算绘制地面的拍摄的区域
    查看>>
    OpenLDAP(2.4.3x)服务器搭建及配置说明
    查看>>
    OpenLDAP编译安装及配置
    查看>>
    OpenMCU(一):STM32F407 FreeRTOS移植
    查看>>
    OpenMCU(三):STM32F103 FreeRTOS移植
    查看>>
    OpenMCU(二):GD32E23xx FreeRTOS移植
    查看>>
    OpenMetadata 命令执行漏洞复现(CVE-2024-28255)
    查看>>
    OpenMMLab | S4模型详解:应对长序列建模的有效方法
    查看>>
    OpenMMLab | 【全网首发】Llama 3 微调项目实践与教程(XTuner 版)
    查看>>
    OpenMMLab | 面向多样应用需求,书生·浦语2.5开源超轻量、高性能多种参数版本
    查看>>
    OpenMV入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
    查看>>
    OpenObserve云原生可观测平台本地Docker部署与远程访问实战教程
    查看>>
    OpenPPL PPQ量化(4):计算图的切分和调度 源码剖析
    查看>>
    OpenPPL PPQ量化(5):执行引擎 源码剖析
    查看>>
    openpyxl 模块的使用
    查看>>
    Openresty框架入门详解
    查看>>
    OpenResty(1):openresty介绍
    查看>>
    OpenResty(2):OpenResty开发环境搭建
    查看>>