Районная олимпиада по информатике. 2018-2019 учебный год. 8-11 классы
Есеп A. Керемет сыйлық
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
Жақында Темірланның туған күні болды. Ең қызық сыйлықты оның досы Айсұлтан жасады. Айсұлтан Темірланның керемет сандарды ұнататынын біледі. Айсұлтанның ойынша, белгілі бір сан кез келген басқа бір бүтін санның квадратына тең болса, ол сан керемет сан деп есептелінеді. Мысалы, $0$, $9$, $121$ — керемет сандар, ал $50$, $3$, $12$ — керемет сандар емес. Айсұлтанда қазір $n$ бүтін саннан тұратын массив бар — $a_1, a_2, a_3, ..., a_n$. Сыйлық жасау үшін, осы тізбектен Айсұлтан екі сан $a_j$ и $a_i$ ($j < i$) алып, олардың көбейтіндісінің керемет сан бола алуын тексереді. Егер де, көбейтінді сан $a_j * a_i$ керемет болса, онда Айсұлтан көбейтіндіні Темірланға сыйлай алады деген сөз. Айсұлтан сыйлықты неше түрлі жолмен жасай алатынын анықтаңыз. Басқаша айтқанда, тізбектен $(a_j, a_i)$ жұптарының арасында $j < i$ болатын және $a_j * a_i$ көбейтіндісі керемет сан болатын жұптардың санын табыңыз.
Формат входного файла
Бірінші жолда тек $n$ берілген — тізбектің ұзындығы $(1 \le n \le 10^3)$.
Екінші жолда бос орын арқылы жазылған $n$ бүтін саннан тұратын тізбек $a_1, a_2, a_3, ..., a_n$ берілген — Айсұлтанның тізбегі $(-1000 \le a_i \le 1000)$.
Формат выходного файла
Тек бір сан, яғни, Айсұлтанның неше жолмен сыйлық жасай алатынын шығаруыңыз керек.
Примеры:
Вход 4 1 0 1 1Ответ
6Вход
2 -8 -2Ответ
1Вход
3 1 16 4Ответ
3Вход
1 0Ответ
0
Замечание
Бұл есеп 3 бөлімнен тұрады:
- $0 \le a_i \le 1$ барлық $1 \le i \le n$ үшін.
- $n = 2$, $-1000 \le a_i \le 1000$.
- Есептің берілгеніндегі шарттар.
комментарий/решение(8) шыгару
Есеп B. Бөлінеді ме
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
ОМА санның 8-ге бөлінгіштігінің өз қасиетін ойлап табуды ұйғарды. Егер берілген санның цифрларының орындарын ауыстрығанда, бастаушы нөлдерсіз және 8-ге бөлінетін сандар тізбегі табылатын болса, ОМА бұл санды 8-ге бөлінеді деп атайды.
Формат входного файла
Бірінші жолда бүтін $n$ саны берілген $(1 \leq n \leq 10^3) $ - санның ұзындығы. $\\$
Екінші жолда цифрлардан тұратын $s$ жолы берілген - тексеру қажет сан.
Формат выходного файла
Егер берілген сан 8-ге бөлінетін болса YES, бөлінбесе NO жазуларын шығарыңыз.
Примеры:
Вход 2 23Ответ
YESВход
3 101Ответ
NO
Замечание
Сандар тізбегі дегеніміз, берілген жолдағы цифлардың орындарын ауыстыру жолымен алынған тізбек. Мысалы 123 жолынан, цифрларды орын ауыстыру арқылы 321, 312, 213, 231, 132 деген сандар тізбегін алуға болады.
Бірінші мысалда 23 санынан 8-ге бөлінетін 32 санын алуға болады жауап YES.
Екінші мысалда 101 санынан 8-ге бөлінетін сан алуға болмайды, жауап NO.$\\$
$\\$
Subtask 1: $(n \leq 100)$ $\\$
Subtask 2: $(n \leq 1000)$
комментарий/решение(10) шыгару
Есеп C. Квадраттардың қосындысы
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
Ұзындығы $n$ болатын екі массив берілген. Берілген массивке байланысты, сізге $q$ рет сұрақ қойылады. Сұрақтардың бәрінің үлгісі бірдей, тек сандары өзгереді. Әр сұрақта сізге белгілі бір аралықты анықтайтын $l$ және $r$ берілген. Берілген аралыққа кіретін бүкіл $a[i]$ мен $b[i]$-лардың айырмаларының квадраттарының қосындысын шығаруыңыз керек. $a[i]$ мына аралықта болуы керек: $a_l, a_{l+1}, \ldots, a_r$ $b[i]$ мына аралықта болуы керек: $b_l, b_{l+1}, \ldots, b_r$
Формат входного файла
Бірінші қатарда сізге екі сан берілген: $n, q, (1 \leq n, q \leq 100000)$\newline
Екінші және үшінші қатарда, сәйкесінше, $a$ және $b$ массиві берілген.\newline
$(-100000 \leq a[i], b[i] \leq 100000)$, $i$ = 1, 2, ... , $n$\newline
Келесі $q$ қатарда $l$, $r$ беріледі: $(1 \leq l \leq r \leq n)$
Система оценки:\newline
Тесттердің $40$ пайызында $(1 \leq n, q \leq 100)$\newline
Тесттердің $60$ пайызында $(1 \leq n, q \leq 100000)$
Формат выходного файла
Әр сұраққа жауап шығарыңыз.
Пример:
Вход 3 1 1 0 5 1 2 3 2 3Ответ
8
комментарий/решение(10) шыгару
Есеп D. Теңестіру
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
Жарасханда $N$ саннан тұратын $a$ массивы бар. Жарасхан берілген массивтың әр санына тек бір операция қолдана алады. Операциялардың 3 түрі бар:
- Санға бірді қосу.
- Саннан бірді азайту.
- Санға нөлді қосу.
Формат входного файла
Бірінші жолда бүтін сан $N$ берілген.
Келесі жолда массивтың элементтері берілген $ a_{i} $.
Формат выходного файла
Жауап ретінде бір сан шығарыңыз — берілген операцияларды орындағаннан кейінгі массивте кездесетін ұқсас элементердің саны.
Система оценки
Бағалау 4 бөлімнен тұрады:
- $1 \le N \le 2$. $10$ ұпай.
- $1 \le N \le 10^2$ және $1 \le a_{i} \le 10$. $20$ ұпай.
- $1 \le N \le 10^5$ және $1 \le a_{i} \le 2$. $20$ ұпай.
- $1 \le N \le 10^5$ және $1 \le a_{i} \le 10^5$. $50$ ұпай.
Примеры:
Вход 7 3 1 4 1 5 9 2Ответ
4Вход
10 1 2 3 4 5 6 7 8 9 10Ответ
3
Замечание
Бірінші мысалда массивты былай өзгертуге болады: 2,2,3,2,6,9,2.
комментарий/решение(9) шыгару
Есеп E. 80236 Математик екеніңді дәлелде
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
ACM ICPC 2018-2019, NEERC - Northern Eurasia Finals-та сәтсіз өнер көрсеткеннен кейін Сақтаушылар335 командасы математикалық сауатылығын көтеруді ұйғарды, себебі сандар теориясы бойынша қарапайым есепті жарыс барысында шығара алмады. Бүгінгі күні команда мүшелерінің бірі үшбұрыштың ауданы бүтін болып табылады ма деген есепті ойлап тапты. Сіздің тапсырмаңыз осы балаларға көмектесу болып табылады.
Формат входного файла
Бірінші жолда үш бүтін сан жазылған $a$, $b$ және $c$ ($ 1 \le a, b, c \le 5000 $) - үшбұрыш жақтарының ұзындығы.
Формат выходного файла
Есептің жауабы болатын жалғыз санды шығарыңыз — үшбұрыштың ауданың, егер ол бүтін болса. Басқа жағдайларда -1 шығарыңыз.
Примеры:
Вход 3 4 5Ответ
6Вход
5 8 5Ответ
12Вход
3 3 3Ответ
-1
комментарий/решение(9) шыгару
Есеп F. Уақыт форматтары
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
Сізге екі уақыт моменті берілген. Екеуі де бір күннің уақыттары, екеуі екі түрлі және екеуі де бір сағаттан жазылып алынған. Қолданылған сағат қандай форматта жұмыс жасауы мүмкін екенін табыңыз. Егер "12 сағаттық формат" болса, онда уақыттарда сағаттың жазылуы үшін 1 мен 12 арасындағы сандар қолданылады. "24 сағаттық формат" үшін 0 мен 23 арасындағы сандар қолданылады. Тапсырманы толық түсіну үшін мысалдарға назар аударыңыз.
Формат входного файла
Бірінші және екінші қатарда екі уақыт моменті берілген.
Формат выходного файла
Егер де, уақыт тек бір форматта болуы мүмкін болса "12-hour clock" немесе "24-hour clock" деп шығарыңыз. Нақты қай форматта екені белгісіз болса "both" деп шығарыңыз. Тырнақшасыз шығарыңыз.
Примеры:
Вход 11:00 23:50Ответ
24-hour clockВход
09:20 03:30Ответ
12-hour clockВход
06:00 12:00Ответ
bothВход
00:00 01:00Ответ
24-hour clock
комментарий/решение(3) шыгару
Есеп G. Депозит
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
Ақымақтар банкінде Жарасханның депозиті бар. Депозиттің ақша соммасы теріс болыу мүмкін. Банк Жарасханның депозитін белгілі пайызбен толтырады. Және де, Жарасхан ақша керек болған кезде, депозиттің бөлігін өзіне ала алады. Сол бөлік пайыз арқылы белгіленеді. Жарасханда барлық пайыз арқылы берілген операциялар тарихы бар. Алғашында Жарасханның депозитінде соммасы $s$ болатын ақша саны бар. Жарасхан ақшасын өзіне алған кезде - пайыз теріс сан, банк толтырғанда - оң санға сейкес келеді. Жарасханның мазалап жүрген бір сұрағы - қай күні депозиттегі сомма ең көп, және қай күні депозиттегі сомма ең аз болғаны. Дәл қазір Жарасхан жұмыспен босамағандықтан, сол сұрақтың жауабын табуды сізге бұйырды.
Формат входного файла
Кіріс файлының ең бірінші жолында, екі бүтін сан берілген $n$ $(1 \le n \le 25)$ - тарихтағы күндер саны, $s$ $(-100 \le s \le 100)$ - Жарасханның депозитіндегі бастапқы сомма.
Екінші жолда $n$ $a_i$ сандары берілген $(-2 \le a_i \le 2)$ - $i$-күн пайызының коэффиценті.
Формат выходного файла
Екі бүтін сан - Жарасханның депозитіндегі ең көп және ең аз сомма болған күндердің нөмірлерін шығарыңыз. Жауапқа келетін бірнеше күн болса, сондай күндердің ішіндегі бірінші күннің нөмірін шығарыңыз.
Система оценки
Есеп 4 бөлімнен тұрады:
- $n = 1$. $13$ ұпайға есептеледі.
- $0 \le a_i \le 2$. $5$ ұпайға есептеледі.
- $1 \le n \le 15$. $40$ ұпайға есептеледі.
- Берілген шектеулер. $42$ ұпайға есептеледі.
Примеры:
Вход 3 100 0.1 -0.4 2Ответ
2 3Вход
3 100 0.5 1 2Ответ
0 3Вход
2 100 1 -0.5Ответ
0 1
Замечание
Бірінші мысалда, әр күннен кейін шығатын соммалар: $110, 66, 132$. Осы тізбекке қарап, екінші күні ең аз, және үшінші күні ең үлкен сомма бар екенін анықтай аламыз.
Екінші мысалда, сомма тек қана өскендіктен, ең басындағы сомма - ең аз болып саналады.
комментарий/решение(10) шыгару
Есеп H. Өспелі бөліктер
Ограничение по времени:
1 second
Ограничение по памяти:
256 megabytes
Сізде ұзындығы $n$ $a$ массивы бар. Берілген массивке байланысты сізге $q$ рет сұрақ қойылады. Сұрақтардың бәрінің үлгісі бірдей, тек сандары өзгереді. Әр сұрақта сізге белгілі бір аралықты анықтайтын $l$ және $r$ берілген. Осы аралықты ($a_l, a_{l+1}, \ldots, a_r$) $k$ бөлікке бөліңіз. Бірақ, әр бөлігін жеке алып қараған кезде тек өспелі массив шығу керек. $k$-ның мәнін барынша кішірейтіңіз.
Формат входного файла
Бірінші жолда екі сан берілген $n, q$ - массивтін ұзындығы және сұраулар саны. Екінші жолда $n$ сан берілген - а массиві. Әр келесі $q$ жолда екі сан берілген, $l$ және $r$.
Формат выходного файла
Әр сұрақта берілген аралықты ережеге сәйкес $k$ рет бөліңіз және $k$-ның мәнін шығарыңыз.
Пример:
Вход 4 3 3 1 4 2 1 4 1 3 4 4Ответ
3 2 1
Замечание
Егер барлық $l \leq i \leq r - 1$ үшін $a_i < a_{i+1}$ болса, $a_l, a_{l+1}, \ldots, a_r$ массив бөлігі өспелі деп аталады.
Бірінші мысалдағы сұрауларға жауаптар: $ \\ $
[3, 1, 4, 2] - [3], [1, 4], [2] $ \\ $
[3, 1, 4] - [3], [1, 4] $ \\ $
[4] - [4] $ \\ $
$1 \leq n, q \leq 1000$ - 40 ұпай. $ \\ $
$1 \leq n, q \leq 10^5$ - 60 ұпай. $ \\ $
комментарий/решение(3) шыгару