توضیحات کلی درمورد سوالات:
۱- باید یک معمای سخت را حل میکردید.
۲- کار با رشته ها و کدهای اسکی کاراکترها یا توابع کتابخانه sstream یا...
۳- برای هر بیت ۸ حالت وجود داشت که بعضی از آنها غیر ممکن بودند در کل هر بیت حداکثر می توانست دو حالت برای بیت های اعداد x و y داشته باشد پس جواب یا صفر بود یا دو به توان k
۴- راه حل سوال ارائه یک الگوریتم حریصانه (greedy) بر حسب di ها و سپس wi ها بود. ایده های متنوعی برای پیاده سازی nlogn وجود داشت در غیر این صورت راه حل تایم میشد.
۵- باید اثبات میکردید که اگر از راست به چپ یک sweep line میزدید به هر نقطه که میرسیدید یا شیب بیشتری ایجاد نمیکرد یا با یکی از دو نقطه ای که تا به اینجا شیب بیشینه دارند شیب بیشینه ایجاد میکرد پس کافی بود که نقاط را بر حسب x مرتب کرده و سپس از راست به چپ حرکت کرده و در هر مرحله دو نطقه ای که شیب بیشینه دارند را ذخیره کرد.
nlogn
موفق باشید!
Post #45
121