+ محدودیت زمان: ۰.۵ ثانیه
+ محدودیت حافظه: ۲۵۶ مگابایت
----------
برنامهای بنویسید که عدد $n$ را از ورودی بگیرد و $n$ سطر اول مثلث خیام پاسکال را نمایش دهد.
مثلث خیام پاسکال به این صورت است که ابتدا تنها یک عدد ۱ در سطر اول وجود دارد. سپس در سطر $i$، $i$ عدد وجود دارد که عدد اول و آخر آن ۱، و هر کدام از اعداد دیگر جمع دو عدد بالایی خود میباشند. تصویر زیر، شش سطر اول مثلث خیام پاسکال میباشد.
![](https://upload.wikimedia.org/wikipedia/commons/thumb/f/f6/Pascal%27s_triangle_5.svg/250px-Pascal%27s_triangle_5.svg.png)
# ورودی
در تنها سطر ورودی عدد $n$ میآید که نمایانگر تعداد سطرهایی است که باید چاپ شود.
$$ 1 \le n \le 100 $$
# خروجی
خروجی شامل $n$ سطر است و باید در آن $n$ سطر اول مثلث خیام پاسکال را خروجی دهید. فاصلهی بین هر دو عدد که در یک سطر قرار دارند باید یک فاصله باشد.
## مثال
## ورودی نمونه
```
5
```
## خروجی نمونه
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
```
مثلث خیام پاسکال
+ محدودیت زمان: ۱ ثانیه
+ محدودیت حافظه: ۲۵۶ مگابایت
----------
یک جدول
$ n \times m $
داریم که در هر خانهاش عددی نوشته شده است.
یک برنامه نویس معمولی به یک خانه از جدول زینی میگوید اگر بتوان روی آن نشست! اما یک برنامه نویس نیمبو به یک خانه از جدول زینی میگوید اگر ۴ همسایه مجاور ضلعیاش موجود باشند و عددش از اعداد خانه های مجاور چپ و راستش بزرگتر، و از اعداد خانه های مجاور بالا و پایینش کوچکتر باشد، و یا بالعکس (یعنی عددش از اعداد خانههای مجاور چپ و راستش کوچکتر و از اعداد خانههای مجاور بالا و پایینش بزرگتر باشد).
شما به عنوان برنامه نویسی نیمبو باید تعداد خانههای زینی یک جدول را پیدا کنید.
# ورودی
خط اول ورودی شامل دو عدد
$n$
و
$m$
است.
در
$n$
خط بعدی برنامه، سطر های جدول آمده اند. به طوری که هر خط شامل
$m$
عدد است که نشاندهنده اعداد یک سطر از جدول هستند. اعداد جدول طبیعی و کوچکتر مساوی
$ 10^{9} $
اند.
$$1 \le n, m \le 100$$
# خروجی
خروجی شامل یک عدد است که تعداد خانههای زینی جدول از دیدگاه برنامهنویسی نیمبو را نشان میدهد.
# مثال
## ورودی نمونه ۱
```
3 3
1 2 3
6 5 6
1 1 1
```
## خروجی نمونه ۱
```
1
```
فقط خانه وسط جدول زینی است. دقت کنید که بقیه خانهها هیچکدام شرط داشتن ۴ همسایه را ندارند.
## ورودی نمونه ۲
```
4 4
1 2 4 1
7 4 1 1
1 3 2 4
1 4 1 1
```
## خروجی نمونه ۲
```
2
```
خانهای که در سطر سوم و ستون دوم قرار دارد، و همچنین خانهای که در سطر سوم و ستون سوم قرار دارد زینیاند.
زینی
+ محدودیت زمان: ۱ ثانیه
+ محدودیت حافظه: ۲۵۶ مگابایت
----------
به تازگی شرکت پارسپک یک مسابقه برنامه نویسی برگزار کرده است. این مسابقه $d$ روز طول میکشد زمان شروع مسابقه $00:00:00$ روز اول است و زمان پایان مسابقه $23:59:59$ روز $d$ام است. در زمان برگزاری مسابقه تعدادی رویداد گزارش شده است. هر رویداد نشان میدهد که یک شرکت کننده به صفحه مسابقه وارد شده است. این رویداد به صورت کلی زیر به شما داده میشود.
$$[ day: number | time: hh:mm:ss | name: user ]$$
همه این اطلاعات به شما داده میشود و از شما خواسته میشود برای هر روز یک گزارش بدهید. گزارش شما شامل سه عدد است:
1. تعداد افرادی که آن روز وارد مسابقه شده اند.
2. تعداد افرادی که برای اولین بار وارد مسابقه شده اند.
3. تعداد افرادی که برای آخرین بار وارد مسابقه شده اند.
از شما خواسته میشود برای هر روز این گزارشها را به دست آورید.
# ورودی
در اولین سطر ورودی دو عدد طبیعی $n$ و $d$ به شما داده میشود که به ترتیب نشان دهنده تعداد رویدادهای مسابقه است و تعداد روزهای برگزاری مسابقه است.
$$1 \le n, d \le 100$$
در $n$ سطر بعدی در هر سطر یک خط به صورت زیر داده میشود.
$$[ day: number | time: hh:mm:ss | name: user ]$$
که $number$ یک عدد طبیعی از $1$ تا $d$ است. $hh:mm:ss$ نشان دهنده لحظه آن رویداد است و $user$ یک رشته حداکثر ۱۰ حرفی از حروف کوچک انگلیسی است که نشان دهنده نام شرکت کننده است. به طور مثال یک رویداد به صورت زیر است.
$$[ day: 3 | time: 17:06:43 | name: mahdi ]$$
تضمین میشود که ترتیب رویدادها به ترتیب زمان به شما داده میشود.
# خروجی
خروجی برنامه شما شامل $d$ خط است و خط $i$ام نشان دهنده گزارش شما برای روز $i$ام است. در هر خط سه عدد صحیح با یک فاصله از هم چاپ کنید که عدد اول نشان دهنده تعداد افرادی که آن روز وارد مسابقه شده اند و عدد دوم نشان دهنده تعداد افرادی که برای اولین بار وارد مسابقه شده اند و عدد سوم نشان دهنده تعداد افرادی که برای آخرین بار وارد مسابقه شده اند.
# مثال
## ورودی نمونه
```
5 2
[ day: 1 | time: 00:00:37 | name: mohammad ]
[ day: 1 | time: 01:14:41 | name: alireza ]
[ day: 1 | time: 15:12:17 | name: mohammad ]
[ day: 2 | time: 21:16:00 | name: maryam ]
[ day: 2 | time: 23:59:33 | name: alireza ]
```
## خروجی نمونه
```
2 2 1
2 1 2
```
روز اول:
دو شرکت کننده به نامهای `mohammad` و `alireza` وارد مسابقه شده اند.
دو شرکت کننده به نامهای `mohammad` و `alireza` برای اولین بار وارد مسابقه شده اند.
یک شرکت کننده به نام `mohammad` آخرین باری است که وارد مسابقه میشود.
روز دوم:
دو شرکت کننده به نامهای `maryam` و `alireza` وارد مسابقه شده اند.
یک شرکت کننده به نام `maryam` برای اولین بار وارد مسابقه شده اند.
دو شرکت کننده به نامهای `maryam` و `alireza` آخرین باری است که وارد مسابقه میشود.
آمار مسابقه
سامانه Quera دارای $n$ صفحه است و آدرس (URL) هرکدام از این صفحات، از الگوی مشخصی پیروی میکند. به عنوان مثال آدرس صفحه معرفی یک شرکت (در بخش شرکتها و فرصتهای شغلی)، الگوی زیر را دارد:
https://quera.ir/careers/company/<company_name>
که به جای `<company_name>` نام شرکت قرار میگیرد. مثلاً آدرس صفحه معرفی تیم هدهد در Quera به این صورت است:
https://quera.ir/careers/company/hodhod
الگوی آدرس یک سؤال در بانک سؤالات دارای بیش از یک پارامتر است:
https://quera.ir/problemset/<category>/<problem_id>
بنابراین آدرس سؤالی با شناسه ۷۲۵ در دسته سؤالات المپیاد برابر این مقدار است:
https://quera.ir/problemset/olympiad/725
ممکن است در الگوی آدرس یک صفحه، هیچ پارامتری وجود نداشته باشد. مانند صفحه کلاسها (شامل لیست کلاسهایی که کاربر در آنها عضو است) که الگوی زیر را دارد:
https://quera.ir/overview
روشن است که با هر پارامتری، آدرس تولیدشده از این الگو برابر با `https://quera.ir/overview` است.
میخواهیم با داشتن نام صفحات و مقادیر پارامترهای موجود در الگوی آدرس صفحات، آدرس دقیق صفحات را به دست آوریم.
## ورودی
در خط اول ورودی، عدد $n$ میآید ($1 \leq n \leq 20$). در $n$ خط بعد، در هر خط نام یک صفحه (با طول حداکثر ۱۰) و الگوی آدرس آن صفحه (با طول حداکثر ۱۰۰) با یک فاصله میآیند. نام صفحات از حروف کوچک انگلیسی تشکیل شدهاند.
سپس در خط بعدی عدد $t$ میآید ($1 \leq t \leq 50$). در $t$ خط بعدی، در هر خط نام یک صفحه و مقادیر پارامترها به شکل `parameter=value` میآیند. توجه کنید که ممکن است یک یا چند تا از پارامترهای موردنیاز برای ساختن آدرس دقیق، داده نشده باشد. همچنین ممکن است یک یا چند پارامتر اضافی (که موردنیاز نیست) داده شده باشد.
نام پارامترها، از حروف کوچک و بزرگ انگلیسی و `_` (underline) تشکیل شده است. نام و مقادیر پارامترها حداکثر ۱۰۰ حرف هستند.
## خروجی
در $t$ خط، مقادیر دقیق آدرسهای خواستهشده را بنویسید.
در هر مورد، اگر نام صفحه خواستهشده در لیست صفحات وجود ندارد، خطای زیر را بنویسید:
[Error] url not found
همچنین اگر مقدار یک یا چند پارامتر موردنیاز داده نشده است، خطای زیر را بنویسید:
[Error] missing parameter(s)
و اگر پارامتری اضافه داده شده (جزء پارامترهای مورد نیاز نیست)، آن را نادیده بگیرید.
## مثال ورودی
```
4
company https://quera.ir/careers/company/<company_name>
problemset_problem https://quera.ir/problemset/<category>/<problem_id>
overview https://quera.ir/overview
test a/<b>/c
9
company company_name=torob
company company_name=!@#
problemset_problem category=olympiad problem_id=725
problemset_problem category=university problem_id=719
problemset_problem problem_id=719
overview
overview a=b
test b=z
TEST
```
## خروجی نمونه
```
https://quera.ir/careers/company/torob
https://quera.ir/careers/company/!@#
https://quera.ir/problemset/olympiad/725
https://quera.ir/problemset/university/719
[Error] missing parameter(s)
https://quera.ir/overview
https://quera.ir/overview
a/z/c
[Error] url not found
```
آدرسیابی
**کد شما باید روی MySQL قابل اجرا باشد.**
بخشی از پایگاه داده بیپتونز که یک سایت آنلاین فروش آهنگ است به شما داده شدهاست.
در حال حاضر این پایگاهداده شامل دو جدول خواننده و آهنگ است.
هر خواننده دارای اسم، ایمیل، شماره حساب و میزان بالانس است. میزان بالانس پولی است که باید به خواننده در ازای فروش آهنگهایش پرداخت کنیم.(در واقع بدهی ما به خواننده در این فیلد ذخیره میشود.)
جدول با نام `singer` دارای Schema ای به شکل زیر است:
| اسم ستون | نوع | تعریف | ملاحظات|
|:------------------:|:----------:|:----------:|:-----------:|
| $name$ | $varchar$ | اسم خواننده | $primary key$ |
| $email$ | $varchar$ | ایمیل خواننده | $$ |
| $account\_number$ | $varchar$ | شماره حساب خواننده | $$ |
| $balance$ | $int$ | طلب خواننده از ما | $$ |
هر آهنگ هم دارای خواننده، اسم آهنگ، اسم آلبوم، آهنگساز و میزان فروش میباشد.(برای راحتی کار فرض کنید هر آهنگ توسط فقط یک نفر خوانده شدهاست)
جدول با نام `song` دارای Schema ای به شکل زیر است:
| اسم ستون | نوع | تعریف | ملاحظات|
|:------------------:|:----------:|:----------:|:-----------:|
| $id$ | $int$ | ایدی رکورد | $primary key$ |
| $name$ | $varchar$ | نام آهنگ | $$ |
| $singer$ | $varchar$ | نام خواننده | $$ |
| $producer$ | $varchar$ | نام آهنگساز | $$ |
| $album$ | $varchar$ | آلبوم آهنگ | $$ |
| $total\_sell$ | $int$ | مجموع فروش آهنگ | $$ |
# مطلوبات
کوئریهای sql خواستهشده از شما موارد زیر است:
(توجه کنید که هر کوئری نمرهای جداگانه دارد و اگر کوئری یک قسمت را نتوانستید بزنید، کوئریهایی که حل کردید را بفرستید و قسمت آن کوئری را خالی بگذارید.)
1. کوئری بنویسید که اسم تمام خوانندههایی که به آنها بدهکار نیستیم(بالانسشان صفر است) به ما بدهد.
2. همانطور که میبینید جدولی برای آهنگسازان موجود نیست، این جدول را بسازید. این جدول تنها باید شامل یک ستون به اسم `name` باشد که نوع آن `varchar` با طول ۲۰ باشد و `primary key` این جدول هم باید همین ستون باشد. همچنین اسم این جدول `producer` میباشد. سپس تمامی آهنگسازهایی که در جدول آهنگ اسمشان ذکر شدهاست را به جدول آهنگسازها اضافه کنید. (چنانچه از چند کوئری برای این بخش استفاده میکنید، حتما در انتهای کوئریها از `;` استفاده کنید)
3. کوئری بنویسید که از بین تمام خوانندهها، خواننده ای را پیدا کند که رتبه دوم بیشترین فروش را در کارهایش با آهنگسازی به نام `dr.dre` داشته است و اسم و مقدار فروش آهنگهایش با این آهنگساز به نام را برگردانید.
# روش پیادهسازی
در یک فایل با نام `code.sql` کد خود را قرار دهید و آن را فشرده (`zip` ) کنید و در سایت بارگذاری نمایید.
کد شما باید به صورت زیر باشد(نام فایل zip مهم نیست).
```
-- Section1
your first query here
-- Section2
your second query here
-- Section3
your third query here
```