当前位置:首页 > 编程笔记 > 正文
已解决

蓝桥杯官网填空题(含2天数)

来自网友在路上 180880提问 提问时间:2023-11-05 11:05:02阅读次数: 80

最佳答案 问答题库808位专家为你答疑解惑

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝特别喜欢  2,今年是公元  2020 年,他特别高兴,因为每天日历上都可以看到  2。

如果日历中只显示年月日,请问从公元  1900 年  1 月  1 日到公元  9999 年  12 月  31 日,一共有多少天日历上包含  2。即有多少天中年月日的数位中包含数字 

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

① 超时了...

public class Main {public static void main(String[] args) {/*int year=1900,month=1,day=1;String str;int ans=0;int[] days=new int[]{0,31,28,31,30,31,30,31,31,30,31,30,31};while(true){str="";if(year%400==0||(year%4==0&&year%100!=0)){days[2]=29;}else{days[2]=28;}str+=String.valueOf(year)+String.valueOf(month)+String.valueOf(day);if(check(str)){ans++;}if(year==9999&&month==12&&day==31){break;}day++;if(day>days[month]){day=1;month++;}if(month>12){month=1;year++;}}System.out.println(ans);*/System.out.println(1994240);}/*public static boolean check(String s){int n=Integer.parseInt(s);int y;while(n>0){y=n%10;if(y==2){return true;}n=n/10;}return false;}*/
}

public class Main {public static void main(String[] args) {int[] days=new int[]{0,31,28,31,30,31,30,31,31,30,31,30,31};int ans=0;for(int year=1900;year<=9999;year++){if(year%400==0||(year%4==0&&year%100!=0)){days[2]=29;}else{days[2]=28;}for(int month=1;month<=12;month++){for(int day=1;day<=days[month];day++){if(check(year)||check(month)||check(day)){ans++;}}}}System.out.println(ans);}public static boolean check(int n){int y;while(n>0){y=n%10;if(y==2){return true;}n=n/10;}return false;}
}

查看全文

99%的人还看了

相似问题

猜你感兴趣

版权申明

本文"蓝桥杯官网填空题(含2天数)":http://eshow365.cn/6-32654-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!