برنامهای بنویسید که عدد را از ورودی بگیرد و سطر اول مثلث خیام پاسکال را نمایش دهد.
مثلث خیام پاسکال به این صورت است که ابتدا تنها یک عدد ۱ در سطر اول وجود دارد. سپس در سطر ، عدد وجود دارد که عدد اول و آخر آن ۱، و هر کدام از اعداد دیگر جمع دو عدد بالایی خود میباشند. تصویر زیر، شش سطر اول مثلث خیام پاسکال میباشد.
در تنها سطر ورودی عدد میآید که نمایانگر تعداد سطرهایی است که باید چاپ شود.
خروجی شامل سطر است و باید در آن سطر اول مثلث خیام پاسکال را خروجی دهید. فاصلهی بین هر دو عدد که در یک سطر قرار دارند باید یک فاصله باشد.
یک جدول داریم که در هر خانهاش عددی نوشته شده است.
یک برنامه نویس معمولی به یک خانه از جدول زینی میگوید اگر بتوان روی آن نشست! اما یک برنامه نویس نیمبو به یک خانه از جدول زینی میگوید اگر ۴ همسایه مجاور ضلعیاش موجود باشند و عددش از اعداد خانه های مجاور چپ و راستش بزرگتر، و از اعداد خانه های مجاور بالا و پایینش کوچکتر باشد، و یا بالعکس (یعنی عددش از اعداد خانههای مجاور چپ و راستش کوچکتر و از اعداد خانههای مجاور بالا و پایینش بزرگتر باشد).
شما به عنوان برنامه نویسی نیمبو باید تعداد خانههای زینی یک جدول را پیدا کنید.
خط اول ورودی شامل دو عدد و است.
در خط بعدی برنامه، سطر های جدول آمده اند. به طوری که هر خط شامل عدد است که نشاندهنده اعداد یک سطر از جدول هستند. اعداد جدول طبیعی و کوچکتر مساوی اند.
خروجی شامل یک عدد است که تعداد خانههای زینی جدول از دیدگاه برنامهنویسی نیمبو را نشان میدهد.
فقط خانه وسط جدول زینی است. دقت کنید که بقیه خانهها هیچکدام شرط داشتن ۴ همسایه را ندارند.
خانهای که در سطر سوم و ستون دوم قرار دارد، و همچنین خانهای که در سطر سوم و ستون سوم قرار دارد زینیاند.
به تازگی شرکت پارسپک یک مسابقه برنامه نویسی برگزار کرده است. این مسابقه روز طول میکشد زمان شروع مسابقه روز اول است و زمان پایان مسابقه روز ام است. در زمان برگزاری مسابقه تعدادی رویداد گزارش شده است. هر رویداد نشان میدهد که یک شرکت کننده به صفحه مسابقه وارد شده است. این رویداد به صورت کلی زیر به شما داده میشود.
همه این اطلاعات به شما داده میشود و از شما خواسته میشود برای هر روز یک گزارش بدهید. گزارش شما شامل سه عدد است:
از شما خواسته میشود برای هر روز این گزارشها را به دست آورید.
در اولین سطر ورودی دو عدد طبیعی و به شما داده میشود که به ترتیب نشان دهنده تعداد رویدادهای مسابقه است و تعداد روزهای برگزاری مسابقه است. در سطر بعدی در هر سطر یک خط به صورت زیر داده میشود. که یک عدد طبیعی از تا است. نشان دهنده لحظه آن رویداد است و یک رشته حداکثر ۱۰ حرفی از حروف کوچک انگلیسی است که نشان دهنده نام شرکت کننده است. به طور مثال یک رویداد به صورت زیر است. تضمین میشود که ترتیب رویدادها به ترتیب زمان به شما داده میشود.
خروجی برنامه شما شامل خط است و خط ام نشان دهنده گزارش شما برای روز ام است. در هر خط سه عدد صحیح با یک فاصله از هم چاپ کنید که عدد اول نشان دهنده تعداد افرادی که آن روز وارد مسابقه شده اند و عدد دوم نشان دهنده تعداد افرادی که برای اولین بار وارد مسابقه شده اند و عدد سوم نشان دهنده تعداد افرادی که برای آخرین بار وارد مسابقه شده اند.
روز اول:
دو شرکت کننده به نامهای mohammad
و alireza
وارد مسابقه شده اند.
دو شرکت کننده به نامهای mohammad
و alireza
برای اولین بار وارد مسابقه شده اند.
یک شرکت کننده به نام mohammad
آخرین باری است که وارد مسابقه میشود.
روز دوم:
دو شرکت کننده به نامهای maryam
و alireza
وارد مسابقه شده اند.
یک شرکت کننده به نام maryam
برای اولین بار وارد مسابقه شده اند.
دو شرکت کننده به نامهای maryam
و alireza
آخرین باری است که وارد مسابقه میشود.
سامانه Quera دارای صفحه است و آدرس (URL) هرکدام از این صفحات، از الگوی مشخصی پیروی میکند. به عنوان مثال آدرس صفحه معرفی یک شرکت (در بخش شرکتها و فرصتهای شغلی)، الگوی زیر را دارد:
که به جای <company_name>
نام شرکت قرار میگیرد. مثلاً آدرس صفحه معرفی تیم هدهد در Quera به این صورت است:
الگوی آدرس یک سؤال در بانک سؤالات دارای بیش از یک پارامتر است:
بنابراین آدرس سؤالی با شناسه ۷۲۵ در دسته سؤالات المپیاد برابر این مقدار است:
ممکن است در الگوی آدرس یک صفحه، هیچ پارامتری وجود نداشته باشد. مانند صفحه کلاسها (شامل لیست کلاسهایی که کاربر در آنها عضو است) که الگوی زیر را دارد:
روشن است که با هر پارامتری، آدرس تولیدشده از این الگو برابر با https://quera.ir/overview
است.
میخواهیم با داشتن نام صفحات و مقادیر پارامترهای موجود در الگوی آدرس صفحات، آدرس دقیق صفحات را به دست آوریم.
در خط اول ورودی، عدد میآید (). در خط بعد، در هر خط نام یک صفحه (با طول حداکثر ۱۰) و الگوی آدرس آن صفحه (با طول حداکثر ۱۰۰) با یک فاصله میآیند. نام صفحات از حروف کوچک انگلیسی تشکیل شدهاند.
سپس در خط بعدی عدد میآید (). در خط بعدی، در هر خط نام یک صفحه و مقادیر پارامترها به شکل parameter=value
میآیند. توجه کنید که ممکن است یک یا چند تا از پارامترهای موردنیاز برای ساختن آدرس دقیق، داده نشده باشد. همچنین ممکن است یک یا چند پارامتر اضافی (که موردنیاز نیست) داده شده باشد.
نام پارامترها، از حروف کوچک و بزرگ انگلیسی و _
(underline) تشکیل شده است. نام و مقادیر پارامترها حداکثر ۱۰۰ حرف هستند.
در خط، مقادیر دقیق آدرسهای خواستهشده را بنویسید.
در هر مورد، اگر نام صفحه خواستهشده در لیست صفحات وجود ندارد، خطای زیر را بنویسید:
همچنین اگر مقدار یک یا چند پارامتر موردنیاز داده نشده است، خطای زیر را بنویسید:
و اگر پارامتری اضافه داده شده (جزء پارامترهای مورد نیاز نیست)، آن را نادیده بگیرید.
کد شما باید روی MySQL قابل اجرا باشد.
بخشی از پایگاه داده بیپتونز که یک سایت آنلاین فروش آهنگ است به شما داده شدهاست.
در حال حاضر این پایگاهداده شامل دو جدول خواننده و آهنگ است.
هر خواننده دارای اسم، ایمیل، شماره حساب و میزان بالانس است. میزان بالانس پولی است که باید به خواننده در ازای فروش آهنگهایش پرداخت کنیم.(در واقع بدهی ما به خواننده در این فیلد ذخیره میشود.)
جدول با نام singer
دارای Schema ای به شکل زیر است:
اسم ستون | نوع | تعریف | ملاحظات |
---|---|---|---|
اسم خواننده | |||
ایمیل خواننده | |||
شماره حساب خواننده | |||
طلب خواننده از ما |
هر آهنگ هم دارای خواننده، اسم آهنگ، اسم آلبوم، آهنگساز و میزان فروش میباشد.(برای راحتی کار فرض کنید هر آهنگ توسط فقط یک نفر خوانده شدهاست)
جدول با نام song
دارای Schema ای به شکل زیر است:
اسم ستون | نوع | تعریف | ملاحظات |
---|---|---|---|
ایدی رکورد | |||
نام آهنگ | |||
نام خواننده | |||
نام آهنگساز | |||
آلبوم آهنگ | |||
مجموع فروش آهنگ | |||
|
کوئریهای sql خواستهشده از شما موارد زیر است: (توجه کنید که هر کوئری نمرهای جداگانه دارد و اگر کوئری یک قسمت را نتوانستید بزنید، کوئریهایی که حل کردید را بفرستید و قسمت آن کوئری را خالی بگذارید.)
name
باشد که نوع آن varchar
با طول ۲۰ باشد و primary key
این جدول هم باید همین ستون باشد. همچنین اسم این جدول producer
میباشد. سپس تمامی آهنگسازهایی که در جدول آهنگ اسمشان ذکر شدهاست را به جدول آهنگسازها اضافه کنید. (چنانچه از چند کوئری برای این بخش استفاده میکنید، حتما در انتهای کوئریها از ;
استفاده کنید)dr.dre
داشته است و اسم و مقدار فروش آهنگهایش با این آهنگساز به نام را برگردانید.در یک فایل با نام code.sql
کد خود را قرار دهید و آن را فشرده (zip
) کنید و در سایت بارگذاری نمایید.
کد شما باید به صورت زیر باشد(نام فایل zip مهم نیست).