How does difficulty get rebalanced in Digitalcoin's Multialgorithm mining? It appears that Digitalcoin has switched to mining with the three algorithms Scrypt, SHA256, and X11. I assume this means that the network will accept a block mined with either of the three algorithms, as long as fulfills an algorithm specific difficulty.

However, how does the difficulty get balanced among the three different mining algorithms? For example, if blocks are found too quickly, but mainly with one mining algorithm, which difficulties get adjusted and how?
I assume this means that the network will accept a block mined with either of the three algorithms, as long as fulfills an algorithm specific difficulty.


Yes, this is true.


  However, how does the difficulty get balanced among the three different mining algorithms?


The difficulty for each algorithm is tracked independently. Essentially, each algo is retargeted to be 2 minutes between block solves of the same algo. Since there are 3 algos, 3 blocks will be solved every two minutes, which means 40 second confirmation times on average. 


  For example, if blocks are found too quickly, but mainly with one mining algorithm, which difficulties get adjusted and how?


Only the mining algorithm that has seen an increase in hash rate will be adjusted. In addition, no more than three blocks of the same algorithm may be solved consecutively.



The difficulty retargeting algorithm code is here: https://github.com/DGCDev/digitalcoin/blob/master/src/main.cpp#L1429.

I should also note that Myriadcoin was the first to implement this type of Multi-Algo-Pow.