From 85dcaa072faeadc318ec717caa29d1cb94bddd59 Mon Sep 17 00:00:00 2001 From: Andrew Guschin Date: Mon, 29 Mar 2021 13:13:40 +0400 Subject: =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=B8=20=D0=BF=D0=B5=D1=80=D0=B5=D0=B8=D0=BC=D0=B5=D0=BD=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BB=20=D0=BF=D0=B5=D1=80=D0=B2=D1=8B=D0=B5=20?= =?UTF-8?q?=D1=82=D1=80=D0=B8=20=D0=B7=D0=B0=D0=B4=D0=B0=D1=87=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- graphs/Makefile | 36 +++++++++++++++--------------- graphs/task1.cpp | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++ graphs/task12_1.cpp | 63 ----------------------------------------------------- graphs/task1_1.cpp | 61 --------------------------------------------------- graphs/task2.cpp | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++ graphs/task3.cpp | 57 ++++++++++++++++++++++++++++++++++++++++++++++++ graphs/task9_1.cpp | 57 ------------------------------------------------ 7 files changed, 197 insertions(+), 199 deletions(-) create mode 100644 graphs/task1.cpp delete mode 100644 graphs/task12_1.cpp delete mode 100644 graphs/task1_1.cpp create mode 100644 graphs/task2.cpp create mode 100644 graphs/task3.cpp delete mode 100644 graphs/task9_1.cpp (limited to 'graphs') diff --git a/graphs/Makefile b/graphs/Makefile index 1441a5f..11c6460 100644 --- a/graphs/Makefile +++ b/graphs/Makefile @@ -2,31 +2,31 @@ CXX=g++ CFLAGS=-g -Wall COMPILE=$(CXX) $(CFLAGS) -task1_1: - $(COMPILE) -o task.out task1_1.cpp -test1_1: task1_1 +task1: + $(COMPILE) -o task.out task1.cpp +test1: task1 @printf "4\n5\n1 2\n1 3\n1 4\n2 3\n3 4\n1" | ./task.out @printf "Answer: 3\n" @printf "4\n5\n1 2\n1 3\n1 4\n2 3\n3 4\n2" | ./task.out - @printf "Answer: 2\n" + @printf "Answer: 1\n" @printf "4\n5\n1 2\n1 3\n1 4\n2 3\n3 4\n3" | ./task.out - @printf "Answer: 3\n" + @printf "Answer: 1\n" @printf "4\n5\n1 2\n1 3\n1 4\n2 3\n3 4\n4" | ./task.out - @printf "Answer: 2\n" + @printf "Answer: 0\n" -task12_1: - $(COMPILE) -o task.out task12_1.cpp -test12_1: task12_1 +task2: + $(COMPILE) -o task.out task2.cpp +test2: task2 @printf "4\n5\n1 2\n1 3\n1 4\n2 3\n3 4\n4 2" | ./task.out -task9_1: - $(COMPILE) -o task.out task9_1.cpp -test9_1: task9_1 +task3: + $(COMPILE) -o task.out task3.cpp +test3: task3 @printf "4\n5\n1 2\n1 3\n1 4\n2 3\n3 4" | ./task.out -task5_2: - $(COMPILE) -o task.out task5_2.cpp -test5_2: task5_2 +task4: + $(COMPILE) -o task.out task4.cpp +test4: task4 @printf "" | ./task.out @printf "Answer: \n" @@ -36,9 +36,9 @@ test5: task5 @printf "" | ./task.out @printf "Answer: \n" -task7_2: - $(COMPILE) -o task.out task7_2.cpp -test7_2: task7_2 +task6: + $(COMPILE) -o task.out task6.cpp +test6: task6 @printf "" | ./task.out @printf "Answer: \n" diff --git a/graphs/task1.cpp b/graphs/task1.cpp new file mode 100644 index 0000000..62806ae --- /dev/null +++ b/graphs/task1.cpp @@ -0,0 +1,60 @@ +#include +#include + +using namespace std; + +typedef vector> graph; + +void print(graph g) +{ + for (int i = 0; i < int(g.size()); ++i) + { + cout << i + 1 << ": "; + for (auto node : g[i]) + cout << node + 1 << ", "; + cout << endl; + } + +} + +int main() +{ + cout << "Введите количество вершин: "; + int n; + cin >> n; + + cout << "Введите количество рёбер: "; + int k; + cin >> k; + + graph g(n); + + cout << "o----------------------o" << endl; + cout << "| Нумерация вершин с 1 |" << endl; + cout << "o----------------------o" << endl; + + + cout << "Введите рёбра (ориентированные):" << endl; + for (int i = 0; i < k; ++i) + { + int a, b; + cin >> a >> b; + a--; + b--; + g[a].push_back(b); + } + + cout << "Введённый граф:" << endl; + print(g); + + cout << "Введите исследуемую вершину: "; + int q; + cin >> q; + q--; + + cout << "С данной вершиной смежны " + << g[q].size() + << " вершин" << endl; + + return 0; +} diff --git a/graphs/task12_1.cpp b/graphs/task12_1.cpp deleted file mode 100644 index 380d5ac..0000000 --- a/graphs/task12_1.cpp +++ /dev/null @@ -1,63 +0,0 @@ -#include -#include - -using namespace std; - -typedef vector> graph; - -void print(graph g) -{ - for (int i = 0; i < int(g.size()); ++i) - { - cout << i + 1 << ": "; - for (auto node : g[i]) - cout << node + 1 << ", "; - cout << endl; - } - -} - -int main() -{ - cout << "Введите количество вершин: "; - int n; - cin >> n; - - cout << "Введите количество рёбер: "; - int k; - cin >> k; - - graph g(n); - - cout << "o----------------------o" << endl; - cout << "| Нумерация вершин с 1 |" << endl; - cout << "o----------------------o" << endl; - - cout << "Введите рёбра (неориентированные):" << endl; - for (int i = 0; i < k; ++i) - { - int a, b; - cin >> a >> b; - a--; - b--; - g[a].push_back(b); - g[b].push_back(a); - } - - cout << "Введённый граф:" << endl; - print(g); - - cout << "Введите вершины, которые необходимо соединить:" << endl; - int p, q; - cin >> p >> q; - p--; - q--; - - g[p].push_back(q); - g[q].push_back(p); - - cout << "Полученный граф:" << endl; - print(g); - - return 0; -} diff --git a/graphs/task1_1.cpp b/graphs/task1_1.cpp deleted file mode 100644 index 140c1bd..0000000 --- a/graphs/task1_1.cpp +++ /dev/null @@ -1,61 +0,0 @@ -#include -#include - -using namespace std; - -typedef vector> graph; - -void print(graph g) -{ - for (int i = 0; i < int(g.size()); ++i) - { - cout << i + 1 << ": "; - for (auto node : g[i]) - cout << node + 1 << ", "; - cout << endl; - } - -} - -int main() -{ - cout << "Введите количество вершин: "; - int n; - cin >> n; - - cout << "Введите количество рёбер: "; - int k; - cin >> k; - - graph g(n); - - cout << "o----------------------o" << endl; - cout << "| Нумерация вершин с 1 |" << endl; - cout << "o----------------------o" << endl; - - - cout << "Введите рёбра (неориентированные):" << endl; - for (int i = 0; i < k; ++i) - { - int a, b; - cin >> a >> b; - a--; - b--; - g[a].push_back(b); - g[b].push_back(a); - } - - cout << "Введённый граф:" << endl; - print(g); - - cout << "Введите исследуемую вершину: "; - int q; - cin >> q; - q--; - - cout << "С данной вершиной смежны " - << g[q].size() - << " вершин" << endl; - - return 0; -} diff --git a/graphs/task2.cpp b/graphs/task2.cpp new file mode 100644 index 0000000..17dcdbe --- /dev/null +++ b/graphs/task2.cpp @@ -0,0 +1,62 @@ +#include +#include + +using namespace std; + +typedef vector> graph; + +void print(graph g) +{ + for (int i = 0; i < int(g.size()); ++i) + { + cout << i + 1 << ": "; + for (auto node : g[i]) + cout << node + 1 << ", "; + cout << endl; + } + +} + +int main() +{ + cout << "Введите количество вершин: "; + int n; + cin >> n; + + cout << "Введите количество рёбер: "; + int k; + cin >> k; + + graph g(n); + + cout << "o----------------------o" << endl; + cout << "| Нумерация вершин с 1 |" << endl; + cout << "o----------------------o" << endl; + + cout << "Введите рёбра (ориентированные):" << endl; + for (int i = 0; i < k; ++i) + { + int a, b; + cin >> a >> b; + a--; + b--; + g[a].push_back(b); + } + + cout << "Введённый граф:" << endl; + print(g); + + cout << "Введите вершины, которые необходимо соединить:" << endl; + int p, q; + cin >> p >> q; + p--; + q--; + + g[p].push_back(q); + g[q].push_back(p); + + cout << "Полученный граф:" << endl; + print(g); + + return 0; +} diff --git a/graphs/task3.cpp b/graphs/task3.cpp new file mode 100644 index 0000000..01f3307 --- /dev/null +++ b/graphs/task3.cpp @@ -0,0 +1,57 @@ +#include +#include +#include + +using namespace std; + +typedef vector> graph; + +void print(graph g) +{ + for (int i = 0; i < int(g.size()); ++i) + { + cout << i + 1 << ": "; + for (auto node : g[i]) + cout << node + 1 << ", "; + cout << endl; + } + +} + +int main() +{ + cout << "Введите количество вершин: "; + int n; + cin >> n; + + cout << "Введите количество рёбер: "; + int k; + cin >> k; + + graph g(n); + + cout << "o----------------------o" << endl; + cout << "| Нумерация вершин с 1 |" << endl; + cout << "o----------------------o" << endl; + + cout << "Введите рёбра (ориентированные):" << endl; + for (int i = 0; i < k; ++i) + { + int a, b; + cin >> a >> b; + a--; + b--; + g[a].push_back(b); + } + + cout << "Введённый граф:" << endl; + print(g); + + cout << "Степени каждой из вершин:" << endl; + for (int i = 0; i < int(g.size()); ++i) + { + printf("d(%i) = %i\n", i + 1, int(g[i].size())); + } + + return 0; +} diff --git a/graphs/task9_1.cpp b/graphs/task9_1.cpp deleted file mode 100644 index 01f3307..0000000 --- a/graphs/task9_1.cpp +++ /dev/null @@ -1,57 +0,0 @@ -#include -#include -#include - -using namespace std; - -typedef vector> graph; - -void print(graph g) -{ - for (int i = 0; i < int(g.size()); ++i) - { - cout << i + 1 << ": "; - for (auto node : g[i]) - cout << node + 1 << ", "; - cout << endl; - } - -} - -int main() -{ - cout << "Введите количество вершин: "; - int n; - cin >> n; - - cout << "Введите количество рёбер: "; - int k; - cin >> k; - - graph g(n); - - cout << "o----------------------o" << endl; - cout << "| Нумерация вершин с 1 |" << endl; - cout << "o----------------------o" << endl; - - cout << "Введите рёбра (ориентированные):" << endl; - for (int i = 0; i < k; ++i) - { - int a, b; - cin >> a >> b; - a--; - b--; - g[a].push_back(b); - } - - cout << "Введённый граф:" << endl; - print(g); - - cout << "Степени каждой из вершин:" << endl; - for (int i = 0; i < int(g.size()); ++i) - { - printf("d(%i) = %i\n", i + 1, int(g[i].size())); - } - - return 0; -} -- cgit v1.2.3