Блог пользователя aya1909

Автор aya1909, история, 4 года назад, По-английски

How to count total no. of distinct cycles in an undirected graph. Graph may be disconnected. Constraints: 0<= no. of nodes <=10

Answer for given image is 7

  • Проголосовать: нравится
  • -32
  • Проголосовать: не нравится

»
4 года назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится

Number of nodes is very small, so a brute force solution should work in O(n * n!).

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    what is that brute force solution?

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    actually no. of nodes can be upto 20

    • »
      »
      »
      4 года назад, # ^ |
        Проголосовать: нравится +5 Проголосовать: не нравится

      In this case you can make a dp solution in O(n^2 * 2^n) (dp[mask][i][j] is 1 if there exists a path from i to j that contains all positions in mask, you can then loop over all of these and check if one of these completes the cycle)

      • »
        »
        »
        »
        3 года назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        it require more than 4*10^8 space.is that possible?

        • »
          »
          »
          »
          »
          3 года назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится

          solve individually for each i value (store the amt of cycles for each length so we can divide by that length later), then you cut down on memory