今夕何年 模擬 思維題

2021-09-12 10:30:10 字數 973 閱讀 8999

今天是2023年8月6日,農曆閏六月十五。

小度獨自憑欄,望著一輪圓月,發出了「今夕何夕,見此良人」的寂寞感慨。

小貼士:在公曆中,能被4整除但不能被100整除,或能被400整除的年份即為閏年。

input

第一行為t,表示輸入資料組數。

每組資料報含乙個日期,格式為yyyy-mm-dd。

1 ≤ t ≤ 10000

yyyy ≥ 2017

日期一定是個合法的日期

output

對每組資料輸出答案年份,題目保證答案不會超過四位數。

sample input

32017-08-06

2017-08-07

2018-01-01

sample output

2023

2023

2024

先總結一下日期變化的規律,在一般情況下,每過一年都會向後推移一天,即如果今年的今天是周一,那麼下一年的今天就是周二。閏年的時候,由於在二月多了一天,所以閏年日期變化會推移兩天。具體一些,如果輸入的日期是二月之後,那麼今年是不是閏年已經沒有影響了,而如果是二月之前就仍會產生影響,所以**裡要區別月份。另外,比較極端的情況,輸入的日期本身就是閏年出現的一天,就2月29日,這種情況下只能一次計算四年,當天數的增加值能整除7的時候說明繞了一圈正好回到那一天。比較考驗思維的模擬題,要仔細分析。

ac**

#include#includeusing namespace std;

int check(int n)

int main()

}cout<} else if(m<=2)//當月份小於等於2的時候,閏年會對其結果產生影響,所以要先判斷日期變化再調整年份

cout<} else//月份大於2時,當年是閏年不會對本年產生影響,所以先到下一年再判斷日期變化

cout<} }

return 0;

}

JG OJ記錄56 10 今夕是何年

描述 輸入乙個正整數m,代表年份,如果m是閏年,則輸出yes,否則輸出no。定義閏年的判斷規則是 能被4整除的大多是閏年,但能被100整除而不能被400整除的年份不是閏年,能被3200整除的也不是閏年。例如1900年不是閏年,2000年是閏年,3200年不是閏年。輸入1個正整數m,表示年份。輸出如果...

Helping the HR 思維模擬題

這道題我一看,那麼長 結果就是乙個模擬題 這道題如果都把他化成秒就很好算了,因為題目有規定輸入的時間不會發生衝突 所以我直接比較秒的大小就行了 主要是題意的理解 1.如果在白班換崗,那麼就是必須在9 30之前到崗,否則就遲到了 並且在到崗後必須值班至少8個小時 2.如果在晚班換崗,那麼就必須在12 ...

NOIP模擬 數球(思維題)

小a有n個球,編號分別為1到n,小a每次都會從n個球中取出若干個球,至少取乙個,至多取n個,每次取完再放回去,需要滿足以下兩個條件。1 每次取出的球的個數兩兩不同。2 每次取出的球的集合兩兩不包含。包含是指,對於兩次取球,對於取的數目少的那次取球的所有球都出現在取的數目多的那次取球中,例如 1,2 ...