ধরুন, "YYYY-MM-DD" ফরম্যাটে আমাদের একটি তারিখ আছে। বছরের দিন সংখ্যা ফেরত দিতে হবে। তাই তারিখ যদি হয় “2019-02-10”, তাহলে এটি বছরের 41তম দিন।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- ধরুন D হল দিনের গণনার একটি অ্যারে যেমন [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