牛客網練習30
阿新 • • 發佈:2018-12-19
題目描述
眾所周知,小K是nowcoder的暴政苟管理,所以小K很擅長踢樹,雖然本題與踢樹無關
小K喜歡將日期排列成yyyy-mm-dd的形式(位數不足添零補齊)的形式,雖然這與小K只會做迴文字串這道水題無關,但小K覺得日期組成的迴文串也是挺可愛的。作為一個涼心出題人,小K決定給你一個可愛的問題:給你兩個日期,求這兩個日期的閉區間內有多少個迴文的日期(輸入可能包含多組資料)
輸入描述:
第一行包含一個整數T,表示有T組資料
接下來T行,每行兩個“yyyy-mm-dd"形式的日期
輸出描述:
輸出共T行,每行輸出當前資料的迴文日期的個數
水過,不是正確的,當遇到同一年時,出錯!!
#include <bits/stdc++.h> using namespace std; int a[13] = {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; int main() { int N; cin>>N; while(N--) { int sy, ey, sm, em, sd, ed; cin>>sy>>sm>>sd>>ey>>em>>ed; int ans = 0; for (int m = 1; m <= 12; m++) { for (int d = 1; d <= a[m]; d++) { int y = d%10*1000 + d/10*100 + m%10*10 + m/10; if (y >= sy && y <= ey) ans++; } } cout<<ans<<endl; } return 0; }