আমার কাজের সহকর্মী আছেন যা প্রতি মঙ্গলবার ও বৃহস্পতিবার বাড়ি থেকে কাজ করে। সকাল আটটার দিকে তিনি নীচের পাঠ্য সহ একটি বার্তা আমাদের পাঠান:
হ্যালো আজ আমি বাড়ি থেকে কাজ করছি
প্রতিদিন তিনি বাড়িতে থাকাকালীন তাকে এই কাজের বোঝা থেকে মুক্তি দিতে আমরা তার জন্য এই কাজটি স্বয়ংক্রিয় করতে চাই।
চ্যালেঞ্জ
কোডের একটি টুকরো হিসাবে যতটা সম্ভব বাইট লিখুন:
- বর্তমান সময়টি গ্রহণ করে: আপনার কোডটি চলতি বছর, মাস (1-12), মাসের দিন (1-3-1), ঘন্টা (0-23) এবং মিনিট (0-59) এবং সপ্তাহের দিনের জন্য মানগুলি পেতে পারে (এই সংখ্যাটি 0 বা 1 থেকে শুরু হয় এবং আপনি যদি 0/1 অর্থ রবিবার, সোমবার বা অন্য কোনও দিন থেকে শুরু করতে পারেন তবে আপনি চয়ন করতে পারেন); অন্যথায় আপনি যেমন একটি কাঠামো পেতে পারে
Date
,DateTime
,Calendar
বা অন্য কোন সময় সংশ্লিষ্ট গঠন, আপনার ভাষা এটা করতে পারবেন পারেন। আপনি চাইলে তারিখের সাথে একটি স্ট্রিংyyyyMMddHHmm
, বা তারিখ এবং সময়ের জন্য দুটি পৃথক স্ট্রিং এবং তারপরে সপ্তাহের দিনের সাথে একটি পূর্ণসংখ্যা পেতে পারেন। মুক্ত মনে. - দুটি ধারাবাহিক সত্য এবং মিথ্যা মানগুলি প্রদান করে, এটি নির্দেশ করে যে বার্তাটি অবশ্যই কাজের আড্ডায় প্রেরণ করা উচিত কি না।
বিধি
- এই কোডের অংশটি পর্যায়ক্রমে ডাকা হবে বলে ধরে নেওয়া হয়। সঠিক পর্যায়ক্রমতা যাইহোক, অপ্রাসঙ্গিক।
- সত্যের মানটি অবশ্যই ফেরত দিতে হবে যদি সপ্তাহের দিন মঙ্গলবার বা বৃহস্পতিবার হয় এবং সময়টি 10 মিনিটের ত্রুটির ব্যবধানের সাথে সকাল 8:00 হয় (7:50 থেকে 8:10 পর্যন্ত অন্তর্ভুক্ত))
- নির্দিষ্ট দিনের জন্য those ঘন্টাগুলির মধ্যে কোডটি প্রথমবার চালু করা হলেই সত্যবাদী মানটি প্রেরণ করতে হবে। আমরা বটটি একই বার্তাটি একাধিকবার প্রেরণ করতে চাই না। আপনি এই বিধিনিষেধটি পরিচালনা করার উপায়টি সম্পূর্ণরূপে আপনার উপর নির্ভর করবে।
- আপনার কোডটি একটি স্বতন্ত্র প্রোগ্রাম হতে পারে যা বারবার সম্পাদিত হতে পারে বা এটি কোনও বড় কোডের অংশ হতে পারে যা সর্বদা চলমান। তোমার পছন্দ.
- আপনি ধরে নিতে পারেন যে কোডটি কার্যকর করার মধ্যে কোনও পুনরায় বুট হবে না।
- আপনি ধরে নিতে পারেন যে তারিখটি সর্বদা সঠিক হবে।
- আপনার কোড সম্পর্কে এবং বিশেষত অধ্যবসায় অর্জনের জন্য ব্যবহৃত পদ্ধতি সম্পর্কে ব্যাখ্যাগুলি উত্সাহিত করা হয়।
উদাহরণ
(Week starts on Monday: 1, the following invokations will be made in succession)
2018,08,27,08,00,1 = falsey (not Tuesday or Thursday)
2018,08,28,07,45,2 = falsey (out of hours)
2018,08,28,07,55,2 = truthy (first time invoked this day at the proper hours)
2018,08,28,08,05,2 = falsey (second time invoked this day at the proper hours)
2018,08,28,08,15,2 = falsey (out of hours)
2018,08,29,08,00,3 = falsey (not Tuesday or Thursday)
2018,08,29,18,00,3 = falsey (not Tuesday or Thursday)
2018,08,30,07,49,4 = falsey (out of hours)
2018,08,30,07,50,4 = truthy (first time invoked this day at the proper hours)
2018,08,30,07,50,4 = falsey (second time invoked this day at the proper hours)
2018,08,30,08,10,4 = falsey (third time invoked this day at the proper hours)
2018,08,30,08,11,4 = falsey (out of hours)
2018,09,04,08,10,2 = truthy (first time invoked this day at the proper hours)
এটি কোড-গল্ফ , তাই প্রতিটি ভাষার পক্ষে সংক্ষিপ্ততম কোডটি জয় পেতে পারে!
YYYYmmdd
সময় এবং সময়টিও নিতে পারি HHss
?