回文日期 思路 最優解 總結知識點

2021-10-24 10:06:08 字數 1032 閱讀 4591

在日常生活中,通過年、月、日這三個要素可以表示出乙個唯一確定的日期。

牛牛習慣用 8 位數字表示乙個日期,其中,前 4 位代表年份,接下來 2 位代表月份,最後 2 位代表日期。

顯然:乙個日期只有一種表示方法,而兩個不同的日期的表示方法不會相同。

牛牛認為,乙個日期是回文的,當且僅當表示這個日期的8位數字是回文的。

現在,牛牛想知道:在他指定的兩個日期之間(包含這兩個日期本身),有多少個真實存在的日期是回文的。

乙個 8 位數字是回文的,當且僅當對於所有的 i(1≤i≤8) 從左向右數的第i個數字和第 9−i 個數字(即從右向左數的第 i 個數字)是相同的。

例如:•對於2023年11月19日,用 8 位數字 20161119 表示,它不是回文的。

•對於2023年1月2日,用 8 位數字 20100102 表示,它是回文的。

•對於2023年10月2日,用 8 位數字 20101002 表示,它不是回文的。

輸入格式

輸入包括兩行,每行包括乙個8位數字。

第一行表示牛牛指定的起始日期date1,第二行表示牛牛指定的終止日期date2。保證date1和date2都是真實存在的日期,且年份部分一定為4位數字,且首位數字不為0。

保證date1一定不晚於date2。

輸出格式

輸出共一行,包含乙個整數,表示在date1和date2之間,有多少個日期是回文的。

輸入樣例:

20110101

20111231

輸出樣例:

1

#include

#include

#include

using

namespace std;

int days[13]

=;bool

check_valid

(int date)

return

true;}

intmain()

cout

}```

知識點總結

1,迴圈中的中斷 continue 跳出此次迴圈,繼續for迴圈 break 跳出當前for迴圈 return 跳出當前方法 2,字串的操作 componentseparatedbystring stringbyreplacingoccurencesofstring withstring iskin...

知識點總結

oncreate onstrat onresume onpause onstop onrestart ondestroy standard 啟動activity都會產生乙個新的activity 預設模式 singletop 啟動activity允許多個,但不允許重疊 singletask 只允許有乙...

知識點總結

function go go 呼叫 go為變數名 setinterval go,1000 1000ms clearinterval 關閉定時器 function abc a,b 2,3 5undefined 未定義 null 空 nan 非數值 string 字串 var a 123 數字型別 va...