算法提高 5-3日历
时间限制:1.0s 内存限制:256.0MB
问题描述
  已知2007年1月1日为星期一。设计一函数按照下述格式打印2007年以后(含)某年某月的日历,2007年以前的拒绝打印。为完成此函数,设计必要的辅助函数也是必要的。
样例输入
一个满足题目要求的输入范例。
例:

2050 3
样例输出
与上面的样例输入对应的输出。
例:

数据规模和约定
  输入数据中每一个数的范围。
  例:年 2007-3000,月:1-12。

import java.util.Scanner;public class 日历 {public static boolean isLeap(int year) {boolean flag = false;if(year % 4 == 0 && year % 100 != 0)flag = true;else if(year % 400 == 0)flag = true;elseflag = false;return flag;}public static int getDay(int month, int year) {int day = 0;if (month == 2) {if (isLeap(year)) day = 29;else day = 28;} else if (month < 8) {if(month % 2 == 0)day = 30;elseday = 31;} else {if(month % 2 == 0)day = 31;elseday = 30;}return day;}public static int getFirst(int month, int year) {int first = 0;int distance = year - 2007;int day = 0;while (distance / 4 >= 1) {day += (365 * 4 + 1);distance -= 4;}int count = 0;while (distance > 0) {if (count == 1) day += 366;elseday += 365;count++;distance--;}int fre = 0;if(isLeap(year))fre = 31 + 29;elsefre = 31 + 28;int mon[] = {0, 0, 31, fre, fre+31, fre+61, fre+92, fre+122, fre+153, fre+184, fre+214, fre+245, fre+275};day += mon[month];first = day % 7;return first+1;}public static void main(String[] args) {Scanner sc = new Scanner(System.in);int year = sc.nextInt();int month = sc.nextInt();sc.close();if(year < 2007)return;int day = getDay(month, year);int firstDay = getFirst(month, year);if(month < 10)System.out.println("Calendar " + year + " - 0" + month);elseSystem.out.println("Calendar " + year + " - " + month);for (int i = 0; i < 21; i++) System.out.print("-");System.out.print("\n");System.out.println("Su Mo Tu We Th Fr Sa ");        for (int i = 0; i < 21; i++) System.out.print("-");System.out.print("\n");int count = 0;if(firstDay != 7)for (int i = 0; i < firstDay; i++) {System.out.print("   ");count++;}                for (int i = 1; i <= day; i++) {if(i < 10)System.out.print(" " + i + " ");elseSystem.out.print(i + " ");count++;if(count % 7 == 0)System.out.print("\n");}System.out.print("\n");for (int i = 0; i < 21; i++) System.out.print("-");}}

Java实现 蓝桥杯VIP 算法提高 5-3日历相关推荐

  1. 蓝桥杯陶陶摘苹果C语言,Java实现 蓝桥杯VIP 算法提高 陶陶摘苹果2

    算法提高 陶陶摘苹果2 时间限制:1.0s 内存限制:256.0MB 问题描述 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出n个苹果.苹果成熟的时候,陶陶就会跑去摘苹果.陶陶有个30厘米高的板凳, ...

  2. java 日历算法_Java实现 蓝桥杯VIP 算法提高 任意年月日历输出

    算法提高 任意年月日历输出 时间限制:1.0s 内存限制:512.0MB 已知2007年1月1日为星期一. 设计一函数按照下述格式打印2007年以后(含)某年某月的日历,2007年以前的拒绝打印. 为 ...

  3. Java实现 蓝桥杯VIP 算法提高 研究兔子的土豪

    试题 算法提高 研究兔子的土豪 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 某天,HWD老师开始研究兔子,因为他是个土豪 ,所以他居然一下子买了一个可以容纳10^18代兔子的巨大 ...

  4. Java实现 蓝桥杯VIP 算法提高 扫雷

    算法提高 扫雷 时间限制:1.0s 内存限制:256.0MB 问题描述 扫雷游戏你一定玩过吧!现在给你若干个n×m的地雷阵,请你计算出每个矩阵中每个单元格相邻单元格内地雷的个数,每个单元格最多有8个相 ...

  5. Java实现 蓝桥杯VIP 算法提高 分苹果

    算法提高 分苹果 时间限制:1.0s 内存限制:256.0MB 问题描述 小朋友排成一排,老师给他们分苹果. 小朋友从左到右标号1-N.有M个老师,每次第i个老师会给第Li个到第Ri个,一共Ri-Li ...

  6. Java实现 蓝桥杯VIP 算法提高 陶陶摘苹果2

    算法提高 陶陶摘苹果2 时间限制:1.0s 内存限制:256.0MB 问题描述 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出n个苹果.苹果成熟的时候,陶陶就会跑去摘苹果.陶陶有个30厘米高的板凳, ...

  7. Java实现 蓝桥杯VIP 算法提高 文化之旅

    算法提高 文化之旅 时间限制:1.0s 内存限制:128.0MB 问题描述 有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次(即如果他学习了某种文化,则他就不 ...

  8. Java实现 蓝桥杯VIP 算法提高 班级排名

    算法提高 班级排名 时间限制:1.0s 内存限制:256.0MB 问题描述 达达在陶陶的影响下,也对学习慢慢的产生了兴趣. 他在每次考试之后,都会追着老师问,自己在班级的总名次是多少.考试一多,老师也 ...

  9. Java实现 蓝桥杯VIP 算法提高 3000米排名预测

    算法提高 3000米排名预测 时间限制:1.0s 内存限制:256.0MB 问题描述 3000米长跑时,围观党们兴高采烈地预测着最后的排名.因为他们来自不同的班,对所有运动员不一定都了解,于是他们分别 ...

  10. Java实现 蓝桥杯VIP 算法提高 我们的征途是星辰大海

    算法提高 我们的征途是星辰大海 时间限制:1.0s 内存限制:256.0MB 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格组成. 共有四种方格: '.' 代表空地,c ...

最新文章

  1. 3.Struts2的输入验证
  2. 根据hibernate拦截器实现可配置日志的记录
  3. idea解决activiti(*.bpmn)文件乱码问题。
  4. 国家图书馆关于php的书,国家图书馆啊,能借的书太少
  5. 网游服务器通信架构设计
  6. hbuilder新建web apk项目_【CUCS】Ionic利用你喜欢的(html css js) web技术创建跨平台的移动app...
  7. git init github
  8. IOS 打包后安装崩溃,debug正常运行
  9. 线性代数及其应用第一章总结
  10. NTP授时服务器(网络校时服务器)对医院信息化建设的重要
  11. c语言提取数字的每一位,C++,如何提取数字的每一位
  12. unity2d物体3d效果
  13. MiniGUI源码分析:GDI(1)-- GDI概览及Surface
  14. html视频标签video旋转播放方向,video视频文件有方向怎么处理?
  15. 第二届邯郸钢铁展洽会 | 图扑软件荣获“2022钢铁行业智造之星奖”
  16. AiBote 2022 新研发的自动化框架,支持 Android 和 Windows 系统。速度非常快
  17. qt.network.monitor: Could not get the INetworkConnection instance for the adapter GUID.QT关闭时程序异常结束
  18. O2O优惠券数据分析(一)
  19. vue+jQuery
  20. 软件研发之道:微软开发团队的经验法则

热门文章

  1. Unity XR Interaction Toolkit中Action与Device的差异探究
  2. i5 10210u和r5 3550h 哪个好
  3. 陈崎嵘:《网络英雄传》系列是代表网络文学最高水准的作品
  4. 基于DataHub元数据血缘管理实施方案
  5. postive psychology
  6. 踏莎行·术 - IM设计思考:XMPP资源绑定
  7. Android开发艺术探索——第九章:四大组件的工作过程(下)
  8. JS 模块化: CommonJS 与 ESM(ECMAScript Module) 的引用机制比较 循环依赖解决方式
  9. 【ncnn】基于ncnn的iOS端深度学习算法部署及应用
  10. 五年级上册ppt计算机教案,小学五年级信息技术上册教案-