لینکهای مفید برای شرکت در مسابقه:
در زمان مسابقه میتوانید سوالهای خود را از قسمت "سوال بپرسید" مطرح کنید.
سری سوم راهنماییها به سؤالات اضافه شد.
بخش فروش دیجیکالا تصمیم گرفته است که تعدادی offer استثنایی ارائه دهد. آنها میخواهند تا عید نوروز سال آینده تخفیف ۸۰٪ روی برخی از اجناس اعمال کنند! حتی ممکن است چنین offer هایی در سالهای آینده نیز ارائه شوند؛ لذا آنها نیاز به برنامهای برای محاسبهی خودکار تعداد روزهای باقیمانده تا عید نوروز دارند.
از شما میخواهیم برنامهای بنویسید که یک تاریخ شمسی از ورودی دریافت کرده و تعداد روزهای باقیمانده تا عید نوروز سال بعد، با محاسبه روز فعلی، را محاسبه کند.
نکته: فرض کنید که سال کبیسه نداریم؛ یعنی همهی سالها ۳۶۵ روزه هستند و شش ماه اول سال ۳۱ روزه، ۵ ماه بعدی، ۳۰ روزه و ماه آخر ۲۹ روزه است.
در یک خط از ورودی استاندارد (stdin)، رشتهی تاریخ (به صورت شمسی) با فرمت yyyy/mm/dd
وارد میشود.
برای دریافت ورودی، میتوانید از تابع readline
استفاده کنید:
در یک خط از خروجی استاندارد، تعداد روزهای باقیمانده تا عید نوروز سال بعد ورودی را چاپ کنید.
برای حل این مسئله، میتوانید آرایهای شامل تعداد روزهای هر ماه در نظر بگیرید.
آرایهی شامل تعداد روزهای هر ماه بهصورت زیر خواهد بود:
با استفاده از تابع readline
میتوان ورودی را از stdin دریافت کرد. همچنین، با استفاده از تابع explode
میتوان سال، ماه و روز را جدا کرد. در نهایت، با استفاده از تابع list
میتوان آرایهی شامل سال، ماه و روز را در سه متغیر ذخیره کرد:
با استفاده از تابع array_slice
میتوان ماههای باقیمانده تا پایان سال را بر اساس آرایهی $months
جدا کرد:
با استفاده از تابع array_sum
میتوان مجموع اعداد آرایهی بالا را بهدست آورد. بنابراین، تعداد روزهای باقیمانده تا عید نوروز سال بعد برابر خواهد بود با: