---
# System prepended metadata

title: 12611 - The Same Calendar
tags: [NTHUOJ]

---

# 12611 - The Same Calendar
## 題解:
有相同的日曆的條件是1月1日星期幾是相同的且一年的天數相同。
每加一年的話，1月1日的星期幾就要加一，
如果遇到閏年就是加二，直到符合上述條件，就是答案。
**Reference:http://codeforces.com/blog/entry/45405**
## Code:
```c=1
#include <stdio.h>
#include <stdbool.h>

bool isLeap(int y){
    return y % 400 == 0 || (y % 4 == 0 && y % 100 != 0);
}

int main(){
    int t, y;
    scanf("%d", &t);
    while(t--){
        scanf("%d", &y);
        bool leap = isLeap(y); // days
        int d = 0; // week
        while(true){
            y++, d++;
            if(isLeap(y)) d++;
            d %= 7;
            if(d == 0 && isLeap(y) == leap) 
                break;
        }
        printf("%d\n", y);
    }
    return 0;
}
```
###### tags: `NTHUOJ`