Олімпіада з програмування-2017
Задача a. Довгий ряд.
Обмеження по пам’яті: 4 Мб
Обмеження по часу: 1 с
Традиційно,
після змагань з квідичу, на факультеті
Слизарин проводять олімпіаду з
алгоритмічного програмування. Багато
з цих задач придумав Том Редл, ще будучи
студентом. Ось одна з цих задач:
Дано нескінченний
ряд
Визначити значення суми цього ряду у заданій точці x.
Вхідні дані. В єдиній стрічці вхідних даних знаходиться число х, модуль якого не перевищує 1000
Вихідні дані. Виведіть єдине число – розв’язок задачі з точністю до 5 знаків після коми.
Приклад
IN |
OUT |
0 |
0.00000 |
Задача b. Гра.
Обмеження по пам’яті: 16 Мб
Обмеження по часу: 0.5 с
Джеймс
Моріарті та Евер Холмс вирішили зіграти
у наступну гру. Перед гравцями N невід’ємних
цілих чисел. За один хід гравець має
обрати одне число і відняти від нього
2 або 3. При цьому число має обов’язково
залишатись невід’ємним. Програє той,
хто не зможе зробити хід. Гравці ходять
по черзі.
Джеймс і Евер – дуже розумні і будуть завжди ходити оптимально. Визначте, хто виграє при оптимальній грі, якщо відомо, що Евер ходить першою.
Вхідні дані. У першому рядку міститься одне ціле число N, далі N чисел, по одному на рядок.
0 ≤ N ≤ 106
0 ≤ Ai < 109
Вихідні дані. Вивести ім’я переможця – "James" чи "Eurus" (без лапок).
Приклад
IN |
OUT |
3 2 3 4 |
Eurus |
4 2 3 4 9 |
James |
Задача c. Рядкофакторіал
Обмеження по пам’яті: 64 Мб
Обмеження по часу: 1 с
Хакер
Еліот Олдерсон – романтик. Він любить
мріяти про прекрасне. Недавно ось
задумався про те, як би чудово було, якби
рядки були схожі на числа... "Але їх
можна додавати!" – подумав Еліот, а
тоді подумав ще і вирішив, що їх можна
і множити!!! Наприклад, перемножимо два
рядки A=ab та B=cde. Тоді A×B = (ab)×(cde) = (a×cde) +
(b×cde) = acde + bcde = acdebcde. Як все просто!!! При
множенні до кожного символа першого
рядка просто дописують весь рядок
другого множника.
Таке "множення" відрізняється від множення чисел: важливий порядок множників. А щоб обчислити факторіал як добуток послідовних рядків: a·b·c·...·z·aa·ab·...·az·ba·...·zz·aaa·... і так далі, то..., хоча самі перевірте, яким довгим вийде результат.
Вхідні дані. Єдиний рядок містить одне ціле n (1 ≤ n ≤ 10000) – кількість множників у рядкофакторіалі.
Вихідні дані. Виведіть довжину рядка результату.
Приклад
IN |
OUT |
3 |
4 |
1 |
1 |
2 |
2 |
Задача d. Два кола
Обмеження по пам’яті: 64 Мб
Обмеження
по часу: 1
с
Якось, у вільний від роботи час, Дональд вирішив згадати шкільні роки. Він знайшов свій старий циркуль і почав малювати кола. Деякі з цих кіл перетиналися, а деякі ні. За даними координатами та радіусами двох заданих кіл, допоможіть Меланії визначити кількість їх спільних точок.
Вхідні дані. 6 чисел x1, y1, r1, x2, y2, r2, де x1, y1, x2, y2, - координати центрів кіл, r1, r2 – їх радіуси. Всі числа - дійсні, не перевищують 1000000000 за модулем, та задані не більш ніж з 3 знаками після коми.
Вихідні дані. Кількість точок перетину. Якщо точок перетину нескінченно багато, то вивести -1.
