2021蓝桥杯大赛软件类国赛Java大学B组 完全日期 复杂遍历搜索

简介: 2021蓝桥杯大赛软件类国赛Java大学B组 完全日期 复杂遍历搜索

package Dduo;
 
public class Main {
  public static void main(String[] args) {
    int cnt=0;
    int arr[]=new int[] {0,31,28,31,30,31,30,31,31,30,31,30,31};
  
    int day=1;
    int month=1;
    int year=2001;
    for(;;day++) {
      if(day>arr[month]) {
        day=1;
        month++;
      }
      if(month>12) {
        month=1;
        day=1;
        year++;
      }
      if(year==2022&&month==1&&day==1)break;
      if(judge(sum(year)+sum(month)+sum(day))) {
        System.out.println(year+" "+month+" "+day);
        cnt++;
      }
    }
    //单独判断闰年
    if(judge(sum(2004)+sum(2)+sum(29))) {
      System.out.println(year+" "+month+" "+day);
      cnt++;
    }
    if(judge(sum(2008)+sum(2)+sum(29))) {
      System.out.println(year+" "+month+" "+day);
      cnt++;
    }
    if(judge(sum(2012)+sum(2)+sum(29))) {
      System.out.println(year+" "+month+" "+day);
      cnt++;
    }
    if(judge(sum(2016)+sum(2)+sum(29))) {
      System.out.println(year+" "+month+" "+day);
      cnt++;
    }
    if(judge(sum(2020)+sum(2)+sum(29))) {
      System.out.println(year+" "+month+" "+day);
      cnt++;
    }
    System.out.print(cnt);
  }
  public static int sum(int x) {
    int sum=0;
    while(x>0) {
      sum+=x%10;
      x/=10;
    }
    return sum;
  }
  public static boolean  judge(int x) {
    int ans=(int )Math.sqrt(x);
    if(ans*ans==x)return true;
    else return false;
  }
}
目录
相关文章
|
2月前
|
存储 监控 安全
单位网络监控软件:Java 技术驱动的高效网络监管体系构建
在数字化办公时代,构建基于Java技术的单位网络监控软件至关重要。该软件能精准监管单位网络活动,保障信息安全,提升工作效率。通过网络流量监测、访问控制及连接状态监控等模块,实现高效网络监管,确保网络稳定、安全、高效运行。
80 11
|
4月前
|
缓存 算法 Java
Java 实现的局域网管控软件的性能调优
局域网管控软件在企业网络管理中至关重要,但随着网络规模扩大和功能需求增加,其性能可能受影响。文章分析了数据处理效率低下、网络通信延迟和资源占用过高等性能瓶颈,并提出了使用缓存、优化算法、NIO库及合理管理线程池等调优措施,最终通过性能测试验证了优化效果,显著提升了软件性能。
57 1
|
4月前
蓝桥杯真题time模块详解 | 顺子日期 星期一
蓝桥杯真题time模块详解 | 顺子日期 星期一
|
1月前
|
运维 监控 算法
企业局域网监控软件中 Java 优先队列算法的核心优势
企业局域网监控软件是数字化时代企业网络安全与高效运营的基石,犹如一位洞察秋毫的卫士。通过Java实现的优先队列算法,它能依据事件优先级排序,确保关键网络事件如异常流量、数据泄露等被优先处理,保障系统稳定与安全。代码示例展示了如何定义网络事件类并使用PriorityQueue处理高优先级事件,尤其在面对疑似风险时迅速启动应急措施。这一核心技术助力企业在复杂网络环境中稳健前行,护航业务腾飞。
65 32
|
6月前
|
存储 Java
Java学习笔记 List集合的定义、集合的遍历、迭代器的使用
Java学习笔记 List集合的定义、集合的遍历、迭代器的使用
101 4
|
3月前
|
消息中间件 前端开发 Java
【国产化软件】接口开放平台:Java+Swagger+Vue3,适配移动端
本文档介绍了基于Java的开放平台技术栈及使用流程,涵盖从注册开发者账号、创建应用、申请令牌到调用API接口的全过程。平台提供丰富的接口管理和统计功能,支持开发者在线维护个人资料和接口令牌,同时兼容移动设备访问和黑夜模式。技术栈方面,后端采用Spring Boot 3 + MySQL + Redis + RabbitMQ + Nacos,前端则基于Vue3 + TypeScript 5.x + Element Plus + UnoCSS。访问开放平台的地址为:http://java.test.yesapi.cn/platform/。
|
3月前
|
存储 Java 开发者
在 Java 中,如何遍历一个 Set 集合?
【10月更文挑战第30天】开发者可以根据具体的需求和代码风格选择合适的遍历方式。增强for循环简洁直观,适用于大多数简单的遍历场景;迭代器则更加灵活,可在遍历过程中进行更多复杂的操作;而Lambda表达式和`forEach`方法则提供了一种更简洁的函数式编程风格的遍历方式。
|
4月前
|
Java 程序员 编译器
Java|如何正确地在遍历 List 时删除元素
从源码分析如何正确地在遍历 List 时删除元素。为什么有的写法会导致异常,而另一些不会。
91 3
|
4月前
|
前端开发 小程序 Java
java基础:map遍历使用;java使用 Patten 和Matches 进行正则匹配;后端传到前端展示图片三种情况,并保存到手机
这篇文章介绍了Java中Map的遍历方法、使用Pattern和matches进行正则表达式匹配,以及后端向前端传输图片并保存到手机的三种情况。
49 1
|
4月前
|
存储 算法 Java
Java一分钟之-数组的创建与遍历
数组作为Java中存储和操作一组相同类型数据的基本结构,其创建和遍历是编程基础中的基础。通过不同的创建方式,可以根据实际需求灵活地初始化数组。而选择合适的遍历方法,则可以提高代码的可读性和效率。掌握这些基本技能,对于深入学习Java乃至其他编程语言的数据结构和算法都是至关重要的。
37 6

热门文章

最新文章