hdoj2005

#include <iostream>
#include<string>
using namespace std;
int main() {
    string str;
    int p,m,d,day,y;
    int month[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    while(cin>>str)
    {
        p=0;y=0;
        int length =str.size();
        for(int i=0;i <length;i++)
        {
            if(str[i+1]=='/'&&0==p)
            {
                for(int j=0;j<=i;j++)
                {
                    y=(int)str[j]-48+y*10;
                }
                if(((y%4 ==0)&&(y%100 != 0))||(y%400==0)) month[2]=month[2]+1;
                p=i+1;
            }
            if(str[i]=='/'&&p!=0)
            {
                if((i-p)==2) m=(int)str[i-1]-48;
                else m=((int)str[i-2]-48)*10+(int)str[i-1]-48;
                if(str.size()-i==2) d=(int)str[i+1]-48;
                else d=((int)str[i+1]-48)*10+(int)str[i+2]-48;
            }
        }
        day=0;
        for(int i=1;i<m;i++)
        {
            day=day+month[i];
        }
        day=day+d;
        cout<<day<<endl;
        month[2]=28;
    }
    return 0;
}

使用字符串要添加<string>

润年判断条件

posted @ 2012-11-06 21:01  茉莉花茶  阅读(211)  评论(0)    收藏  举报