ElemenT马上就要毕业了,他打开日历看了看时间。发现日历上的日期都是2017-04-04这样的格式的,月和日如果不足2位数,前面都会补充0。 给定一个年份和月份,ElemenT把那个月的日期都按上述格式写到纸上,他现在想知道某种数字出现了多少次。-笔试面试资料

这是qklbishe.com第15993 篇笔试面试资料
提供答案分析,通过本文《ElemenT马上就要毕业了,他打开日历看了看时间。发现日历上的日期都是2017-04-04这样的格式的,月和日如果不足2位数,前面都会补充0。 给定一个年份和月份,ElemenT把那个月的日期都按上述格式写到纸上,他现在想知道某种数字出现了多少次。-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:

ElemenT马上就要毕业了,他打开日历看了看时间。发现日历上的日期都是2017-04-04这样的格式的,月和日如果不足2位数,前面都会补充0。
给定一个年份和月份,ElemenT把那个月的日期都按上述格式写到纸上,他现在想知道某种数字出现了多少次。
ElemenT马上就要毕业了,他打开日历看了看时间。发现日历上的日期都是2017-04-04这样的格式的,月和日如果不足2位数,前面都会补充0。    给定一个年份和月份,ElemenT把那个月的日期都按上述格式写到纸上,他现在想知道某种数字出现了多少次。 区块链毕设学生818461690号
这***题目,输入的测试用例,说的是一行一行的,实际是一起输入的,什么玩意?
思路:使用java的Calendar处理一行一行的数据
import java.util.Calendar; import java.util.Scanner;  public class Main {     public static void main(String[] args) {         //处理输入         Scanner sc = new Scanner(System.in);         while (true) {             String oneLine = sc.nextLine();             if (oneLine.equals("")) {                 return;             }             String[] dateStringArray = oneLine.split(" ");             int year = Integer.parseInt(dateStringArray[0]);             int month = Integer.parseInt(dateStringArray[1]);             char targetChar = (char) ('0' + Integer.parseInt(dateStringArray[2]));              Calendar calendar = Calendar.getInstance();             calendar.set(Calendar.YEAR, year);             calendar.set(Calendar.MONTH, month, 1);             //比如4月,这里就得到了4月的最后一天。再得到本月的天数             calendar.add(Calendar.DATE, -1);             //得到本月的天数             int dayCount = calendar.get(Calendar.DAY_OF_MONTH);              //统计年份的含量             int resYear = 0;             String yearString = "" + year;             for (int i = 0; i < yearString.length(); i++) {                 if (yearString.charAt(i) == targetChar) {                     resYear++;                 }             }             resYear = resYear * dayCount;              //统计月份的含量             int resMonth = 0;             String monthString = "";             if (month < 10) {                 monthString = "0" + month;             } else {                 monthString = monthString + month;             }             for (int i = 0; i < monthString.length(); i++) {                 if (monthString.charAt(i) == targetChar) {                     resMonth++;                 }             }             resMonth = resMonth * dayCount;              //统计天数的含量             int resDay = 0;             String dayString = "";             for (int i = 1; i < dayCount; i++) {                 //如果当前日期是小于10的,需要在前面拼接一个0                 if (i < 10) {                     dayString = "0" + i;                 } else {                     dayString = "" + i;                 }                 for (int j = 0; j < dayString.length(); j++) {                     if (dayString.charAt(j) == targetChar) {                         resDay++;                     }                 }             }              //结果是三者的和             int res = resYear + resMonth + resDay;             System.out.println(res);          }     } } 

今天 19:33:09 回复(0)

文章部分来自互联网,侵权联系删除
www.qklbishe.com

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » ElemenT马上就要毕业了,他打开日历看了看时间。发现日历上的日期都是2017-04-04这样的格式的,月和日如果不足2位数,前面都会补充0。 给定一个年份和月份,ElemenT把那个月的日期都按上述格式写到纸上,他现在想知道某种数字出现了多少次。-笔试面试资料

提供最优质的资源集合

立即查看 了解详情