当前位置:网站首页>1154. 一年中的第几天

1154. 一年中的第几天

2022-06-13 06:20:00 Mr Gao

1154. 一年中的第几天

给你一个字符串 date ,按 YYYY-MM-DD 格式表示一个 现行公元纪年法 日期。返回该日期是当年的第几天。

示例 1:

输入:date = “2019-01-09”
输出:9
解释:给定日期是2019年的第九天。

示例 2:

输入:date = “2019-02-10”
输出:41
这题没什么难度,常规去做就行了,注意下闰年判断条件。解题代码如下:

int dayOfYear(char * date){
    
    int year=0;
    int month=0;
    int day=0;
    int target_day=0;
    int i;
    int num=0;
    int months[12]={
    31,28,31,30,31,30,31,31,30,31,30,31};
    i=0;
   while(date[i]!='\0'){
    
       if(date[i]=='-'){
    
           num++;
           i++;
           continue;
       }
       else{
    
           if(num==0){
    
               year=year*10+date[i]-'0';

           }
           if(num==1){
    
               month=month*10+date[i]-'0';
           }
           if(num==2){
    
               day=day*10+date[i]-'0';
           }
       }
       i++;
       

   }
   if((year%4==0&&year%100!=0)||year%400==0){
    
       months[1]=29;
   }
   for(i=0;i<month-1;i++){
    
       target_day=target_day+months[i];
   }
   target_day=target_day+day;
   return target_day;


}
原网站

版权声明
本文为[Mr Gao]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_43327597/article/details/125249943