我是靠谱客的博主 独特小伙,最近开发中收集的这篇文章主要介绍zzuli OJ 2357: 小明学长回学校,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目描述

在未来的某一天,小明学长躺在他XXX平米的别墅里喝着龙井,突然一种莫名其妙的感觉涌上心头:一晃这么长的时间过去了,记得当时和队友在331有时因为想出一道题的好的解法能兴奋的喊出来,真想回去再打场比赛。于是小明学长就想约上那些老队友一起回去看看,但是又不想开车回去,因为他比较喜欢锻炼,所以想骑着山地车来次长途的旅行,顺便还能看看沿途的风景。现在学长准备year0-month0-day0早晨出发,和老队友们约好year0-month1-day1晚上到达(晚上更适合回忆嘛╮( ̄▽  ̄)╭),学长想知道这次回去路上需要多少天,但是又懒得计算,所以就麻烦聪明的学弟你来帮学长算算吧。

输入

第一行输入一个整数n,表示有n组数据。
每组测试数据占一行,分别为两个日期,日期格式为:year-month-day,用空格隔开。具体见输入样例。约定两个日期年份相同。

输出

第一行输入一个整数n,表示有n组数据。
每组测试数据占一行,分别为两个日期,日期格式为:year-month-day,用空格隔开。具体见输入样例。约定两个日期年份相同。

样例输入

2

2018-10-27 2018-10-30

2018-11-1 2018-11-11

样例输出

4

11

#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
while(n--)
{
int year;
int month1,month2,day1,day2;
scanf("%d-%d-%d",&year,&month1,&day1);
scanf("%d-%d-%d",&year,&month2,&day2);
if(month1==month2)
printf("%dn",day2-day1+1);
else
{
int sum1=0;//第一次时间在当年的第几天
switch(month1-1)
{
case 12:
sum1+=31;
case 11:
sum1+=30;
case 10:
sum1+=31;
case 9:
sum1+=30;
case 8:
sum1+=31;
case 7:
sum1+=31;
case 6:
sum1+=30;
case 5:
sum1+=31;
case 4:
sum1+=30;
case 3:
sum1+=31;
case 2:
if(year%4==0&&year%100!=0||year%400==0)
sum1+=29;
else
sum1+=28;
case 1:
sum1+=31;
}
sum1+=day1;
int sum2=0;//第二次时间在当年的第几天
switch(month2-1)
{
case 12:
sum2+=31;
case 11:
sum2+=30;
case 10:
sum2+=31;
case 9:
sum2+=30;
case 8:
sum2+=31;
case 7:
sum2+=31;
case 6:
sum2+=30;
case 5:
sum2+=31;
case 4:
sum2+=30;
case 3:
sum2+=31;
case 2:
if(year%4==0&&year%100!=0||year%400==0)
sum2+=29;
else
sum2+=28;
case 1:
sum2+=31;
}
sum2+=day2;
printf("%dn",sum2-sum1+1);
}
}
return 0;
}

 

最后

以上就是独特小伙为你收集整理的zzuli OJ 2357: 小明学长回学校的全部内容,希望文章能够帮你解决zzuli OJ 2357: 小明学长回学校所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部