मान लीजिए, हमारे पास "YYYY-MM-DD" प्रारूप में एक तिथि है। हमें वर्ष की दिन संख्या वापस करनी होगी। तो अगर तारीख “2019-02-10” है, तो यह साल का 41वां दिन है।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- मान लें कि डी दिन की गिनती की एक सरणी है जैसे [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
- तिथि को वर्ष, महीने और दिन की सूची में बदलें
- यदि वर्ष लीप वर्ष है तो दिनांक D[2] =29 निर्धारित करें
- दिन की गिनती को महीने में जोड़ें - मिमी - 1. और उसके बाद दिन की गिनती।
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
class Solution(object): def dayOfYear(self, date): days = [0,31,28,31,30,31,30,31,31,30,31,30,31] d = list(map(int,date.split("-"))) if d[0] % 400 == 0: days[2]+=1 elif d[0]%4 == 0 and d[0]%100!=0: days[2]+=1 for i in range(1,len(days)): days[i]+=days[i-1] return days[d[1]-1]+d[2] ob1 = Solution() print(ob1.dayOfYear("2019-02-10"))
इनपुट
"2019-02-10"
आउटपुट
41