Загрузка...

Перевести код с C++ на C#

Тема в разделе C# создана пользователем AbdreyE 16 сен 2021. 544 просмотра

  1. AbdreyE
    AbdreyE Автор темы 16 сен 2021 0 30 ноя 2020
    Доброго времени суток уважаемые форумчане и знатоки. Необходима Ваша помощь, помогите пожалуйста перевести код с C++ на C# заранее огромное спасибо.


    /*
    Дан неориентированный невзвешенный граф. Необходимо посчитать количество его компонент связности и вывести их.
    Формат ввода
    Во входном файле записано два числа N и M (0 < N ≤ 100000, 0 ≤ M ≤ 100000). В следующих M строках записаны по два числа i и j (1 ≤ i, j ≤ N), которые означают, что вершины i и j соединены ребром.
    Формат вывода
    В первой строчке выходного файла выведите количество компонент связности. Далее выведите сами компоненты связности в следующем формате: в первой строке количество вершин в компоненте, во второй - сами вершины в произвольном порядке.
    */
    #include <iostream>
    #include <vector>
    using namespace std;
    const int N = 100000;
    vector<int> g[N];
    bool used[N];
    vector<int> component;
    void dfs (int v)
    {
    used[v] = true;
    component.push_back(v + 1);
    for (int i : g[v])
    {
    if (!used[i])
    {
    dfs (i);
    }
    }
    }
    int main(int argc, char **argv)
    {
    int n, m;
    cin >> n >> m;
    for (int i = 0; i < m; i++)
    {
    int in_node, out_node;
    cin >> out_node >> in_node;
    g[out_node - 1].push_back(in_node - 1);
    g[in_node - 1].push_back(out_node - 1);
    }
    used[n];
    int count = 0;
    for (int i = 0; i < n; i++)
    {
    if (!used[i])
    {
    component.clear();
    dfs(i);
    count++;
    }
    }
    for (int i = 0; i < n; i++)
    used[i] = false;
    cout << count << endl;
    for (int i = 0; i < n; i++)
    {
    if (!used[i])
    {
    component.clear();
    dfs(i);
    cout << component.size() << endl;
    for (int x : component)
    {
    cout << x << " ";
    }
    cout << endl;
    }
    }
    return 0;
    }
     
  2. calllve
    calllve 16 сен 2021 Заблокирован(а) 17 2 авг 2021
    за бесплатно никто не будет браться
     
  3. macromacros
    macromacros 16 сен 2021 12 19 янв 2020
    из нормального языка переводит в .net а ты гений:toilet:
     
    1. Посмотреть предыдущие комментарии (2)
    2. macromacros
    3. AbdreyE Автор темы
      macromacros, Я просто попросил помощи, на нет и суда нет, в любом случае спасибо что отозвались.
Загрузка...
Top