在一行上输入三个整数
,分别代表年、月、日。保证输入的日期是合法的。
输出一个整数,代表输入的日期是这一年的第几天。
2012 12 31
366
年是闰年,因此
年
月
日是这一年的第
天。
1982 3 4
63
while(line = await readline()){ line = line.split(" "); var year = line[0]; line = line.join("-"); var day = (new Date(line).getTime() - new Date(year+"-01-01")) / 1000 /60/60/24 + 1; console.log(day) }
function func(line) { // 保证年份为4位数且日期合法 if(!/^\d{4}(\s\d{1,2}){2}$/.test(line)){ throw new Error('输入值错误'); } // 分别提取年月日 const [year, month, day] = line.split(" "); // 计算当天的毫秒数和当年第一天的毫秒数 const start = new Date(year, 0, 0).getTime(); const end = new Date(year, month - 1, day).getTime(); // 取差值,再将毫秒数转化为天数 console.log((end - start) / (1000 * 60 * 60 * 24)); } while ((line = readline())) { func(line); }