Top.Mail.Ru
Ответы

Олимпиада по информатике СРОЧНО

Сдать решение задачи A-Подвох
Ограничение времени: 1 с
Ограничение реального времени: 5 с
Ограничение памяти: 256M
Задача A: Подвох
На бумаге нарисована окружность. На окружности отмечено
точек. Проведены всевозможные хорды, соединяющие данные точки. Оказалось, что никакие три хорды не проходят через одну точку.

Саша взял ножницы и вырезал из бумаги круг, а потом разрезал по всем хордам. На сколько частей развалился круг?

Формат входных данных
В первой строке дано целое число
n ( 1<n<6)
— количество точек.

Формат результата
Выведите единственное целое число — ответ на задачу.

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Высший разум
4мес

Да тут всего шесть вариантов, нарисуй их вручную и вбей свитч-кейс в программу.
1 точка - нет хорд, круг остаётся одним куском.
2 точки - 1 хорда, круг разваливается на 2 части.

3 точки - 3 хорды, 4 части.

4 точки - 6 хорд, 8 частей.

5 точек - 10 хорд, 16 частей.

6 точек - 15 хорд, 31 часть. Искал 32-ю, не нашёл, но всё же, может оказаться 32.


А хотя, у тебя 1 и 6 не входят в множество допустимых значений. Так что для n = от 2 до 5, ответ: 1 << (n - 1) (<< - это битовый сдвиг влево), даже без свитча.

12345678
 #include <iostream>

int main() {
    unsigned n;
    std::cin >> n;
    std::cout << (1u << (n - 1)) << endl;
    return 0;
} 
Удаленный ответ Ответ удалён