
Несколько игроков играют в следующую игру: изначально дан правильный многоугольник с N вершинами,
в котором не проведено ни одной диагонали. Ход игрока заключается в том, что он соединяет две не соседние вершины многоугольника диагональю так, чтобы она не пересекала уже проведённые диагонали в какой-либо точке, не являющейся вершиной многоугольника (в частности, это обозначает, что совпадающие диагонали проводить нельзя). Игра заканчивается, когда ход сделать невозможно. Правила подсчёта очков в этой игре слишком сложны, и здесь мы их приводить не будем. Выведите наименьшее суммарное количество ходов, сделанных игроками. Формат ввода Входные данные содержат одно целое число N — количество вершин многоугольника ( 4 ≤ N ≤ 1 0 0 0 ). Формат вывода Выведите одно число — наименьшее суммарное количество ходов, сделанных игроками. В примере в случае правильного четырёхугольника (то есть квадрата) первый игрок проводит диагональ, после чего игра автоматически заканчивается: оставшаяся диагональ пересекается с уже проведённой. Пример Ввод Вывод 4 1 Примечания Решением этой задачи должна являться программа на одном из представленных в системе языков программирования, решающая данную задачу. Программа должна считывать данные со стандартного ввода (клавиатуры) и выводить на стандартный вывод (монитор). Никаких дополнительных строк или символов выводить не разрешается. Желательно в Паскале или в qbasic

Ответы на вопрос

stdout:
/temp/compiling/source.bas(1) error 3: Expected End-of-Line, found 'Pascal'
Pascal;
^
/temp/compiling/source.bas(2) error 10: Expected '=', found ';'
Var;
^
/temp/compiling/source.bas(3) error 3: Expected End-of-Line, found '�'
a,b:integer;
^
/temp/compiling/source.bas(4) error 10: Expected '=', found ';'
Begin;
^
/temp/compiling/source.bas(5) error 3: Expected End-of-Line, found '�'
read(a,b);
^
/temp/compiling/source.bas(6) error 3: Expected End-of-Line, found '�'
write(a+b);
^
/temp/compiling/source.bas(7) error 10: Expected '='
End.
^
/temp/compiling/source.bas(9) error 3: Expected End-of-Line, found '�'
Язык C++
^
/temp/compiling/source.bas(11) error 145: Only valid in -lang fb or deprecated or fblite, found 'using'
using namespace std;
^
/temp/compiling/source.bas(12) error 6: Expected '(', found 'main'
int main() {
^
/temp/compiling/source.bas(12) error 132: Too many errors, exiting
stderr:



Ответ:
Var
a,b:integer;
begin
read(a);
b:=a-3;
write(b);
end.
Объяснение: трудно обьяснить прогу



Данная задача относится к теории графов и имеет простое решение.
Когда мы соединяем две несмежные вершины многоугольника, мы добавляем одну диагональ и разбиваем многоугольник на два меньших многоугольника. Это означает, что каждый ход уменьшает число вершин многоугольника на 1.
Мы хотим найти наименьшее количество ходов, чтобы закончить игру, то есть уменьшить количество вершин до 3 (треугольник). Каждый ход уменьшает количество вершин на 1, поэтому нам нужно сделать N-3 ходов.
Таким образом, ответом на задачу будет N-3.
Пример решения на Python:
pythonN = int(input())
moves = N - 3
print(moves)
Пример решения на C++:
cpp#include <iostream>
using namespace std;
int main() {
int N;
cin >> N;
int moves = N - 3;
cout << moves << endl;
return 0;
}
Оба этих примера считывают число N с ввода, вычисляют количество ходов moves и выводят его в стандартный вывод.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili