HDU 1076(第n个生日在哪一年)

简介: Problem Description Ignatius was born in a leap year, so he want to know when he could hold his birthday party.

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;
}
        
    
     

 

目录
相关文章
|
数据采集 程序员 Python
【每周一坑】特殊的生日
好吧,我在跳票的道路上又双叒叕前进了一步……今天终于厚着脸皮来更新【每“周”一坑】啦。感谢在后台孜孜不倦催促我的同学们
PTA 1041 考试座位号 (15 分)
每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。
108 0
|
C++
蓝桥杯练习题一 - 生日蜡烛(c++)
蓝桥杯练习题一 - 生日蜡烛(c++)
167 0
|
算法
UPC——神仙贷款—>二分
题目描述 神仙由于刚到凡间故手上缺钱,于是她去银行贷款了。因此,她在贷款之后,在一段时间内将不得不每月偿还固定的分期付款。这个问题要求计算神仙向银行支付的利率。假设利率按月累计。
183 0
HDU - 1285: 确定比赛名次
HDU - 1285: 确定比赛名次
95 0
HDOJ 1201 18岁生日
HDOJ 1201 18岁生日
116 0
HDOJ 1070 Milk(水题,考英文的)
HDOJ 1070 Milk(水题,考英文的)
112 0