TLE খাওয়া একজন পথিক এর গল্প

Online programming করার জন্য track your progress এ থাকা হয় সবসময়। আমরা কয়েকজন যেমন অনিক শোভন আর আমি chatting করতাম। যাই হোক, ওদিকে যাইয়া লাভ নাই।কিছুদিন Uva onlinejudge তে problem solve করতাম। আমি মাঝখানে বাদ দিয়া দিলাম।কিন্তু ওরা চালাইয়া গেল আর এক এক জন বস হইয়া গেল। আমি টানা ৩-৪ মাস পর ওইদিন আবার Felix Halim ভাইয়ের সাইট টাতে ঢুকে দেখলাম অনিক শোভন কে বলছে, ভাই,১০০৮৩ নাম্বার এর জন্য কোন শর্টকাট নাই।মানুয়ালি করতে হবে। আমি ভাবলাম,অনেকদিন problem solve করা হয় না। এইটা try করি। দেখলাম problem টা Big Number এর। তাই JAVA এর BigInteger এর class ব্যবহার করে solve করে ফেললাম। কিন্তু TLE খাইলাম। এইবার নিজে optimize করার চেষ্টা করলাম।অনেক টাই করলাম।কিন্তু লাভ হল না। পর পর কয়েকবার TLE খাইলাম.এইত গেল প্রথম দিনের ঘটনা। পর দিন অনিক কে বললাম hints দেওয়ার জন্য। ও যা বলল ,তাতে আমি কিছু তা আশা পেলাম। মানে ওর বুদ্ধিতে কিছুটা time কমলো। যাই হক এইবার আর submit করতে পারলাম না।কারন 3rd case এ code টা infinity টে গেল। এইবার শোভন কে বললাম আমার code টা দেখে দিতে। ও কিছু condition add করতে বলল। হা,এইবার আমি খুশি,কারন ওই 3rd case এ এখন আর সমস্যা নেই। কিন্তু আবার TLE.[oh noo!!!] ওইদিন রাতে শোভন কে প্রায় ৪-৫ ঘন্টা খাটাইছি নিজের সার্থ উদ্ধারের জন্য । যাই হোক,শেষ পর্যন্ত divide() function টার কাজ manually করলে টাইম কমবে এই আসায় ওইদিন রাতে কয়েকটা TLE খাওয়ার পর খান্ত দিলাম কারন পরদিন সকালে class আছে। সকালে দেরি করে ঘুম থেকে উঠলাম। মানে class শুরুর আর মাত্র ৫ মিনিট বাকি। আমি dress up করে roommate এর হাতে খাতা টা দিয়ে বললাম class এ চলে যেতে। আমি ব্রাশ নিয়ে দাত মাজতে মাজতে ৩ তালা থেকে নিচে নেমে মুখ ধুয়ে ব্রাশ টা পকেট এ রেখে দৌড় দিয়ে class এ যাই।খুব বেশি দেরী হয় নি। এইবার আসল কথায় আসি, ফেলিক্স হালিম ভাইয়ের ওই সাইট তাতে post দিলাম আমার সমস্যা নিয়ে। nhahtdh আমাকে Reply দিলেন । উনি আমাকে যা করতে বললেন তা আমি আগেই করে রেখেছি। তারপর উনি নিজে solve করে ৩ বার TLE,2 বার WA খাওয়ার পর finally Accepted এর মুখ দেখলেন।দেখা গেল আমি শুধু মাত্র একটা check না করার জন্য TLE খাচ্ছিলাম। ঠিক করলাম। ৩ দিন পর Accepted নামক বাস্তটার মুখ দেখলাম।

মজার ব্যপার যা ঘটল,তা হচ্ছে আমার code টা nhahtdh ভাইয়ের থেকে ৫০% কম সময়ে output দিচ্ছিল। পরে অবশ্য উনি সমস্যা খুজে বের করেচ্ছিলেন উনার code এর।
এই ৩ দিনে আমার অর্জনঃ
2 টা WA ,
3 টা RE,
2 টা CE
9 টা TLE
logarithm ব্যবহার করে division জানতাম না আগে।।এইটা শিখে ফেললাম।
C++ এর String এ যা JAAN ভাইয়ের BigNumber এর যা code ছিল টা জ়াভা টে convert করে ফেললাম।
যদিও এই ২টার কোনটাই এইটায় লাগে নাই।

অবশেষে বাংলা-English এর মিশ্রণ এর জন্য খুবই দুঃখিত।

One Reply to “TLE খাওয়া একজন পথিক এর গল্প”

Leave a Reply

Your email address will not be published. Required fields are marked *