hdu 1201

简介:

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1201
hint:关键是判断是不是闰年的2月29日!!!

#include <iostream>
#include <cstdio>
using namespace std;
bool run(int year)
{
    if(year % 400 ==0 ||(year % 4 ==0 && year %100!=0))
    return 1;
    return 0;
}
int main()
{
    int t,y,m,d;
    cin>>t;
    while(t--)
    {
        scanf("%d-%d-%d",&y,&m,&d);
        if(m == 2 && d == 29)
        {
            puts("-1");
            continue;
        }
        int sum=0;
        for(int i=1; i<=18; i++)
        {
            if(run(y+i))
                sum+=366;
            else
                sum+=365;
        }
        if(run(y) && m<=2)
            sum++;
        if(run(y+18) && m<=2)
            sum--;
        cout<<sum<<endl;
    }
    return 0;
}
目录
相关文章
|
7月前
|
Java
HDU-4552-怪盗基德的挑战书
HDU-4552-怪盗基德的挑战书
49 0
|
7月前
|
Java 测试技术
hdu 1228 A + B
hdu 1228 A + B
50 0
|
机器学习/深度学习 Java 算法
|
机器学习/深度学习 人工智能
HDU 2674
  题意:求N!mod2009,N=41时,N!因式分解一定含7*7*41,即N!%2009=0.所以只要计算0
719 0
|
人工智能
hdu2084数塔
经典问题了,题意我就不叙述了(题目是中文的~) 分析:dp[i][j]表示在第i行第j个位置上能取得的最大和,那么要从最后一行开始算起,到塔顶结束:dp[i][j] = a[i][j]+max(dp[i+1][j], dp[i+1][j+1]), 边界条件是dp[n][j] = a[n][j]; ...
671 0