zoukankan      html  css  js  c++  java
  • HDU 1076(第n个生日在哪一年)

    Problem Description

    Ignatius was born in a leap year, so he want to know when he could hold his birthday party. Can you tell him?

     

    Given a positive integers Y which indicate the start year, and a positive integer N, your task is to tell the Nth leap year from year Y.

     

    Note:

    if year Y is a leap year, then the 1st leap year is year Y.

    Input

    The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow.

    Each test case contains two positive integers Y and N(1<=N<=10000).

    Output

    For each test case, you should output the Nth leap year from year Y.

    Sample Input

    3

    2005 25

    1855 12

    2004 10000

     

    Sample Output

    2108

    1904

    43236

    /*
    该题N定义为50000RE,100000AC
    因为该题year没范围,但因为要可以求第10000个生日,
    所以 year的范围也绝对不会是INT_MAX,
    考虑到不知year的范围,先试用is_leap(int year) 函数判断
    闰年,不用初始化,若超时,再按我这种方法
    */ 
    #include<string.h>
    #include<stdlib.h>
    #define N 100000
    int leap[N];
    void isleap()
    {
        int i,j;
        memset(leap,0,sizeof(leap));
        for(i=1;i<N;i++)
        if(i%4==0&&i%100!=0||i%400==0)
            leap[i]=1;
    }
    int main()
    {
        int i,j,T;
        int year,num,cnt;
        scanf("%d",&T);
        isleap();
        while(T--)
        {
            cnt=0;
            scanf("%d %d",&year,&num);
            for(i=year;cnt<num;i++)
            if(leap[i])
                cnt++;
            printf("%d\n",i-1);
        }
        system("pause");
        return 0;
    }
            
        
         
    
  • 相关阅读:
    用户(三)
    首页和token验证(二)
    项目初始化和登录退出(一)
    VSCode设置vue/react模板
    Git操作
    C#可视化程序设计第三章(1,2)
    C#可视化程序设计第二章(3,4)
    SQL数据库第五章
    C#可视化程序设计第一章
    SQL数据库第四章
  • 原文地址:https://www.cnblogs.com/hxsyl/p/2614747.html
Copyright © 2011-2022 走看看