Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
2 / 2 / 1
Регистрация: 14.09.2012
Сообщений: 83

Задача с Codeforces

15.09.2012, 00:49. Показов 1193. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Разбирал самый первый контест
вот и столкнулся с такой проблемой не понимаю на чем основывается вывод получения сторон.
Вот собственно задача
http://codeforces.com/contest/1/problem/C

Вот здесь ее разбор
http://codeforces.com/blog/entry/495

Вот собственно мой код, основанный на разборе.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include <iostream>
#include <cmath>
 
using namespace std;
 
const double PI = acos(-1.0);
const double eps = 1e-4;
 
struct pi
{
    double x, y;
};
 
istream &operator >>(istream &in, pi &p)
{
    in >> p.x >> p.y;
    return in;
}
double len(pi a, pi b)
{
    return sqrt((b.x - a.x) * (b.x - a.x) + (b.y - a.y) * (b.y - a.y));
}
 
double gcd(double a, double b) {
    while (fabs(a) > eps && fabs(b) > eps) {
        if (a > b)
                a -= floor(a / b) * b;
        else
                b -= floor(b / a) * a;
    }
    return a + b;
}
 
int main()
{
    pi p1, p2, p3;
    cin >> p1 >> p2 >> p3;
 
    double a, b, c, s, A, B, C, R, S, n;
 
    a = len(p1, p2);
    b = len(p2, p3);
    c = len(p1, p3);
    s = abs(((p2.x - p1.x) * (p3.y - p1.y) - (p3.x - p1.x) * (p2.y - p1.y)) / 2);
    R = (a * b * c) / (4 * s);
    A = acos((b * b + c * c - a * a) / (2 * b * c));
    B = acos((a * a + c * c - b * b) / (2 * a * c));
    C = acos((a * a + b * b - c * c) / (2 * a * b));
    n = PI / gcd(gcd(A, B), C);
    S = abs((n / 2) * R * R * sin(2 * PI / n));
 
    cout.precision(10);
 
    cout << fixed << S;
 
    return 0;
}
На каком правиле основано получение числа сторон ? ( n = PI / gcd(gcd(A, B), C) );
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.09.2012, 00:49
Ответы с готовыми решениями:

Задача с Codeforces, уровень A
Вроде простая задача, а я затупил. Неправильный ответ на тесте 5 Ограбление Банка Преступник попытался ограбить банк, но не смог...

Нахождение суммы остатков (задача с Codeforces)
Здравствуйте! Сейчас я пытаюсь решить задачу. Суть такая - даются числа n и m, необходимо подсчитать сумму ряда типа n mod 1 + n mod 2...

Codeforces и питон
Не могу разобраться, как осуществляется ввод и вывод данных. Вводные данные:В первой строке расположены два целых числа A и B, не...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.09.2012, 00:49
Помогаю со студенческими работами здесь

Codeforces.Double Cola
Условие задачи таково: Шелдон, Леонард, Пенни, Раджеш и Говард стоят в очереди к автомату по продаже баночек с напитком «Double Cola»,...

Ищу человека в команду на codeforces
Ищу человека в свою команду на codeforces для соревнований Прогаю на c++,на соревнованиях не блещу,хочу найти человека,для обоюдного...

Runtime error в задаче на codeforces
(p.s. что за тупая система тут: написал пост , не зная, что слово &quot;проблема&quot; в заголовке запрещена - пост стерся. Кайф:) ) Пытался...

Codeforces, 456B - Федя и математика
Страница задачи на codeforces.com Федя учится в гимназии. Домашнее задание по математике у Феди состоит в вычислении следующего...

В некотором государстве ввели компьютерный паспорт гражданина. Укажите пол гражданина и последовательность событий
Доброго времени суток,форумчане. Хотелось бы попросить помощи в решении одной задачи от умных голов. Задача: В некотором...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru