zoukankan      html  css  js  c++  java
  • 九度OJ 打印日期 (模拟)

    题目1186:打印日期

    时间限制:1 秒

    内存限制:32 兆

    特殊判题:

    提交:4284

    解决:1483

    题目描写叙述:

    给出年分m和一年中的第n天,算出第n天是几月几号。

    输入:

    输入包含两个整数y(1<=y<=3000),n(1<=n<=366)。

    输出:

    可能有多组測试数据,对于每组数据,
    按 yyyy-mm-dd的格式将输入中相应的日期打印出来。

    例子输入:
    2000 3
    2000 31
    2000 40
    2000 60
    2000 61
    2001 60
    例子输出:
    2000-01-03
    2000-01-31
    2000-02-09
    2000-02-29
    2000-03-01
    2001-03-01
    #include<stdio.h>
    int m,n;
    int month[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    int isLeapYear(int y){
        if((y%4==0&&y%100!=0)||y%400==0)
        {
            return 1;
        }
        else
            return 0;
    }
    void solve()
    {
        int i=1;
        while(n>month[i])
        {
            n-=month[i];
            i++;
        }
        printf("%04d-%02d-%02d
    ",m,i,n);
    }
    int main(int argc, char *argv[])
    {
        while(~scanf("%d%d",&m,&n))
        {
            if(isLeapYear(m)){
                month[2]++;
                solve();
                month[2]--;
            }
            else
                solve();
        }
        return 0;
    }
    


    注意输出格式的问题

  • 相关阅读:
    linux日志守护进程 syslog
    ORM(一)
    ajax
    python bbs项目代码分析
    jquery基础
    PHP根据概率产生随机数
    用PHP删除文件操作unlink
    实时显示剩余可以输入的文字数
    mysql分表方法实现
    php 输出昨天,今天,明天是星期几的方法
  • 原文地址:https://www.cnblogs.com/mfmdaoyou/p/6696467.html
Copyright © 2011-2022 走看看