首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

[蓝桥杯 2024 省 A] 艺术与篮球

  • 25-04-24 14:24
  • 3087
  • 11119
blog.csdn.net

[蓝桥杯 2024 省 A] 艺术与篮球

题目描述

小蓝出生在一个艺术与运动并重的家庭中。
妈妈是位书法家,她希望小蓝能通过练习书法,继承她的艺术天赋,并练就一手好字。爸爸是一名篮球教练,他希望小蓝能通过篮球锻炼身体,培养运
动的激情和团队合作的精神。
为了既满足妈妈的期望,又不辜负爸爸的心意,小蓝决定根据日期的笔画数来安排自己的练习。首先,他会将当天的日期按照 YYYYMMDD 的格式
转换成一个 8 8 8 位数,然后将这 8 8 8 位数对应到汉字上,计算这些汉字的总笔画数。如果总笔画数超过 50 50 50,他就去练习篮球;如果总笔画数不超过 50 50 50,他就去练习书法。
例如,在 2024 2024 2024 年 1 1 1 月 1 1 1 日这天,日期可表示为一个 8 8 8 位数字 20240101 20240101 20240101,其转换为汉字是“二零二四零一零一”。日期的总笔画数为 2 + 13 + 2 + 5 + 13 + 1 + 13 + 1 = 50 2 + 13 + 2 + 5 + 13 + 1 + 13 + 1 = 50 2+13+2+5+13+1+13+1=50,因此在这天,小蓝会去练习书法。
以下是汉字的笔画数对照表:

汉字笔画数汉字笔画数
零$13 $五 4 4 4
一 1 1 1六 4 4 4
二 2 2 2七 2 2 2
三 3 3 3八 2 2 2
四 5 5 5九 2 2 2

现在,请你帮助小蓝统计一下,在 2000 2000 2000 年 1 1 1 月 1 1 1 日到 2024 2024 2024 年 4 4 4 月 13 13 13 日
这段时间内,小蓝有多少天是在练习篮球?

输入格式

这是一道结果填空题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

输出格式

这是一道结果填空题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

思路

对日期范围内的日期遍历,其中需要注意构造字符串的个位数问题,即2020-1-12–>20200112的转换,终止判断和循环条件,以及闰年处理

代码

public class Main {
    //数字对应序列
    public static int[] printList = {13, 1, 2, 3, 5, 4, 4, 2, 2, 2};
    //非闰年与闰年月份日期序列
    public static int[] dateList = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    public static int[] dateListLeap = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

    public static void main(String[] args) {
        System.out.println(function());
    }

    public static int function() {
        int res=0;
        for (int y = 2000; y >= 2000 && y <= 2024; y++) {
            //闰年标记
            int flag = 0;
            if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) {
                flag = 1;
            }
            for (int m = 1; m <= 12; m++) {
                String str = "";
                if (flag == 1) {
                    for (int d = 1; d <= dateListLeap[m - 1]; d++) {
                        //构造日期字符串
                        str += y;
                        if (m < 10) str += "0" + m;
                        else str += m;
                        if (d < 10) str += "0" + d;
                        else str += d;
                        //检测终点日期跳出
                        if(str.equals("20240414"))return res;
                        int sum=0;
                        for(char i:str.toCharArray()){
                            sum+=printList[i-'0'];
                        }
                        //判断打不打篮球
                        if(sum>50){
                            res+=1;
                        }
                        //清空状态
                        str="";
                    }
                } else {//同上,非闰年序列
                    for (int d = 1; d <= dateList[m - 1]; d++) {
                        str += y;
                        if (m < 10) str += "0" + m;
                        else str += m;
                        if (d < 10) str += "0" + d;
                        else str += d;
                        int sum=0;
                        for(char i:str.toCharArray()){
                            sum+=printList[i-'0'];
                        }
                        if(sum>50){
                            res+=1;
                        }
                        str="";
                    }
                }

            }
        }
        return res;
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
注:本文转载自blog.csdn.net的tqxy的文章"https://blog.csdn.net/qwc62668963/article/details/145177253"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

131
学习和成长
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2024 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top