e-olymp 472. Вероятность

Latest posts by Данила Савчак (see all)

Задача

Вася придумал новую игру. Для игры требуется полоска из трёх стоящих в ряд клеток, фишки [latex]n[/latex] различных видов и непрозрачный мешок.

В начале игры одинаковое количество фишек каждого вида помещается в мешок. Игра заключается в том, что игрок вытаскивает из мешка фишки одну за другой и помещает эти фишки в клетки полоски в том порядке, в котором он их вытащил. Игра считается выигранной, если на каких-нибудь двух соседних клетках оказались одинаковые фишки.

Сыграв несколько раз, иногда выигрывая и иногда проигрывая, Вася задумался над вопросом, насколько он везучий человек. А именно, насколько частота его выигрышей больше или меньше средней.

Чтобы оценить среднюю частоту выигрышей, Вася решил найти такую величину: количество выигрышных вариантов заполнения полоски разделить на количество всех вариантов заполнения полоски. Количество всех вариантов заполнения полоски Вася нашёл самостоятельно (получилось [latex] n^3[/latex] ), а вот для нахождения количества выигрышных вариантов он обратился к своему знакомому, лучше разбирающемуся в математике и программировании, т.е. к Вам. Continue reading

Ю2.3

Сіренко Валерія Сергіївна
Сіренко Валерія Сергіївна

Latest posts by Сіренко Валерія Сергіївна (see all)

Задача: Треугольник задан координатами своих вершин на плоскости:   [latex]A(x_{a}, y_{a})[/latex], [latex]B(x_{b}, y_{b})[/latex], [latex]C(x_{c}, y_{c})[/latex]. Определить, является он прямо-, остро-, или тупоугольным.

Замечание: Не следует отбрасывать экстремальные случаи, когда вершины треугольников совпадают или лежат на одной прямой. Например, треугольник с нулевой стороной обладает свойством прямоугольника и имеет два прямых угла!

Тесты:

[latex]x_{A}[/latex] [latex]y_{A}[/latex] [latex]x_{B}[/latex] [latex]y_{B}[/latex] [latex]x_{C}[/latex] [latex]y_{C}[/latex] Результат комментарий
0 1 0 2 0 3 тупоугольный пройден
1 4 3 2 6 2 тупоугольный пройден
6 2 6 2 6 4 прямоугольный пройден
 2 1 2 3 5 3 прямоугольный пройден
5 5 5 5 5 5 невозможно определить  тип треугольника пройден
 2 1 3 4 4 1 остроугольный пройден
 2 1 1 3 4 4 остроугольный пройден

Ссылка на С++ :  http://ideone.com/LfWkbB

Ссылка на Java: http://ideone.com/yrS444

Код:

 

Решение : 

Для начала проверяем такое условие при котором мы не можем определить тип треугольника, если же оно не выполняется , то треугольник прямоугольный

Если не одно из этих условий не выполняется, то мы ищем стороны треугольника и по теореме косинусов находим косинус угла. Далее выполняем три таких условия, при которых определяется какой треугольник : остро- тупо- или прямоугольный